glthread: rename marshal.h/c to glthread_marshal.h and glthread_shaderobj.c
[mesa.git] / src / mesa / main / drawtex.c
index c2ad5f238629243283ae3525b76648ef9f6faeac..6114b3277b03399b5a6abf77d6b272e9c0e0b4ac 100644 (file)
  * DEALINGS IN THE SOFTWARE.
  */
 
+#include "main/errors.h"
 #include "main/drawtex.h"
 #include "main/state.h"
 #include "main/imports.h"
-
-
-#if FEATURE_OES_draw_texture
+#include "main/mtypes.h"
 
 
 static void
-draw_texture(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z,
+draw_texture(struct gl_context *ctx, GLfloat x, GLfloat y, GLfloat z,
              GLfloat width, GLfloat height)
 {
    if (!ctx->Extensions.OES_draw_texture) {
@@ -43,16 +42,20 @@ draw_texture(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z,
       return;
    }
 
+   _mesa_set_vp_override(ctx, GL_TRUE);
+
    if (ctx->NewState)
       _mesa_update_state(ctx);
 
-   ASSERT(ctx->Driver.DrawTex);
+   assert(ctx->Driver.DrawTex);
    ctx->Driver.DrawTex(ctx, x, y, z, width, height);
+
+   _mesa_set_vp_override(ctx, GL_FALSE);
 }
 
 
 void GLAPIENTRY
-_mesa_DrawTexf(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)
+_mesa_DrawTexfOES(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)
 {
    GET_CURRENT_CONTEXT(ctx);
    draw_texture(ctx, x, y, z, width, height);
@@ -60,7 +63,7 @@ _mesa_DrawTexf(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)
 
 
 void GLAPIENTRY
-_mesa_DrawTexfv(const GLfloat *coords)
+_mesa_DrawTexfvOES(const GLfloat *coords)
 {
    GET_CURRENT_CONTEXT(ctx);
    draw_texture(ctx, coords[0], coords[1], coords[2], coords[3], coords[4]);
@@ -68,7 +71,7 @@ _mesa_DrawTexfv(const GLfloat *coords)
 
 
 void GLAPIENTRY
-_mesa_DrawTexi(GLint x, GLint y, GLint z, GLint width, GLint height)
+_mesa_DrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height)
 {
    GET_CURRENT_CONTEXT(ctx);
    draw_texture(ctx, (GLfloat) x, (GLfloat) y, (GLfloat) z,
@@ -77,7 +80,7 @@ _mesa_DrawTexi(GLint x, GLint y, GLint z, GLint width, GLint height)
 
 
 void GLAPIENTRY
-_mesa_DrawTexiv(const GLint *coords)
+_mesa_DrawTexivOES(const GLint *coords)
 {
    GET_CURRENT_CONTEXT(ctx);
    draw_texture(ctx, (GLfloat) coords[0], (GLfloat) coords[1],
@@ -86,7 +89,7 @@ _mesa_DrawTexiv(const GLint *coords)
 
 
 void GLAPIENTRY
-_mesa_DrawTexs(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)
+_mesa_DrawTexsOES(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)
 {
    GET_CURRENT_CONTEXT(ctx);
    draw_texture(ctx, (GLfloat) x, (GLfloat) y, (GLfloat) z,
@@ -95,7 +98,7 @@ _mesa_DrawTexs(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)
 
 
 void GLAPIENTRY
-_mesa_DrawTexsv(const GLshort *coords)
+_mesa_DrawTexsvOES(const GLshort *coords)
 {
    GET_CURRENT_CONTEXT(ctx);
    draw_texture(ctx, (GLfloat) coords[0], (GLfloat) coords[1],
@@ -127,5 +130,3 @@ _mesa_DrawTexxv(const GLfixed *coords)
                 (GLfloat) coords[3] / 65536.0f,
                 (GLfloat) coords[4] / 65536.0f);
 }
-
-#endif /* FEATURE_OES_draw_texture */