mesa: set additional fields in _mesa_buffer_map_range()
[mesa.git] / src / mesa / main / get.c
index 516159bbf2fe6eb151cb9f3f1b39af8992150949..d0c9cea00c78a28c200a4eed862c35663c1f9d1c 100644 (file)
@@ -276,6 +276,7 @@ _mesa_GetBooleanv( GLenum pname, GLboolean *params )
       case GL_CURRENT_TEXTURE_COORDS:
          {
          const GLuint texUnit = ctx->Texture.CurrentUnit;
+         FLUSH_CURRENT(ctx, 0);
          params[0] = FLOAT_TO_BOOLEAN(ctx->Current.Attrib[VERT_ATTRIB_TEX0 + texUnit][0]);
          params[1] = FLOAT_TO_BOOLEAN(ctx->Current.Attrib[VERT_ATTRIB_TEX0 + texUnit][1]);
          params[2] = FLOAT_TO_BOOLEAN(ctx->Current.Attrib[VERT_ATTRIB_TEX0 + texUnit][2]);
@@ -1879,6 +1880,10 @@ _mesa_GetBooleanv( GLenum pname, GLboolean *params )
          CHECK_EXT1(APPLE_vertex_array_object, "GetBooleanv");
          params[0] = INT_TO_BOOLEAN(ctx->Array.ArrayObj->Name);
          break;
+      case GL_TEXTURE_CUBE_MAP_SEAMLESS:
+         CHECK_EXT1(ARB_seamless_cube_map, "GetBooleanv");
+         params[0] = ctx->Texture.CubeMapSeamless;
+         break;
       default:
          _mesa_error(ctx, GL_INVALID_ENUM, "glGetBooleanv(pname=0x%x)", pname);
    }
@@ -2098,6 +2103,7 @@ _mesa_GetFloatv( GLenum pname, GLfloat *params )
       case GL_CURRENT_TEXTURE_COORDS:
          {
          const GLuint texUnit = ctx->Texture.CurrentUnit;
+         FLUSH_CURRENT(ctx, 0);
          params[0] = ctx->Current.Attrib[VERT_ATTRIB_TEX0 + texUnit][0];
          params[1] = ctx->Current.Attrib[VERT_ATTRIB_TEX0 + texUnit][1];
          params[2] = ctx->Current.Attrib[VERT_ATTRIB_TEX0 + texUnit][2];
@@ -3701,6 +3707,10 @@ _mesa_GetFloatv( GLenum pname, GLfloat *params )
          CHECK_EXT1(APPLE_vertex_array_object, "GetFloatv");
          params[0] = (GLfloat)(ctx->Array.ArrayObj->Name);
          break;
+      case GL_TEXTURE_CUBE_MAP_SEAMLESS:
+         CHECK_EXT1(ARB_seamless_cube_map, "GetFloatv");
+         params[0] = BOOLEAN_TO_FLOAT(ctx->Texture.CubeMapSeamless);
+         break;
       default:
          _mesa_error(ctx, GL_INVALID_ENUM, "glGetFloatv(pname=0x%x)", pname);
    }
@@ -3920,6 +3930,7 @@ _mesa_GetIntegerv( GLenum pname, GLint *params )
       case GL_CURRENT_TEXTURE_COORDS:
          {
          const GLuint texUnit = ctx->Texture.CurrentUnit;
+         FLUSH_CURRENT(ctx, 0);
          params[0] = IROUND(ctx->Current.Attrib[VERT_ATTRIB_TEX0 + texUnit][0]);
          params[1] = IROUND(ctx->Current.Attrib[VERT_ATTRIB_TEX0 + texUnit][1]);
          params[2] = IROUND(ctx->Current.Attrib[VERT_ATTRIB_TEX0 + texUnit][2]);
@@ -5523,6 +5534,10 @@ _mesa_GetIntegerv( GLenum pname, GLint *params )
          CHECK_EXT1(APPLE_vertex_array_object, "GetIntegerv");
          params[0] = ctx->Array.ArrayObj->Name;
          break;
+      case GL_TEXTURE_CUBE_MAP_SEAMLESS:
+         CHECK_EXT1(ARB_seamless_cube_map, "GetIntegerv");
+         params[0] = BOOLEAN_TO_INT(ctx->Texture.CubeMapSeamless);
+         break;
       default:
          _mesa_error(ctx, GL_INVALID_ENUM, "glGetIntegerv(pname=0x%x)", pname);
    }