summaryrefslogtreecommitdiff
path: root/src/mesa
diff options
context:
space:
mode:
authorBrian Paul <brian.paul@tungstengraphics.com>2001-05-03 23:55:38 +0000
committerBrian Paul <brian.paul@tungstengraphics.com>2001-05-03 23:55:38 +0000
commita2519c8aed0bf2019d0a664974ff848e918cc510 (patch)
treedc0074769e968bc3bf99c6d6992a8d2e48c04984 /src/mesa
parent1b3528fe635242f782fbcdde3ba74b5b7359a362 (diff)
do FLUSH_VERTICES() in glGet*() functions to make occlusion testing work, perhaps needed for other cases, like GL_CURRENT_COLOR
Diffstat (limited to 'src/mesa')
-rw-r--r--src/mesa/main/get.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c
index 26a0de03b7..1e9b7be3ce 100644
--- a/src/mesa/main/get.c
+++ b/src/mesa/main/get.c
@@ -1,4 +1,4 @@
-/* $Id: get.c,v 1.58 2001/04/28 08:39:17 keithw Exp $ */
+/* $Id: get.c,v 1.59 2001/05/03 23:55:38 brianp Exp $ */
/*
* Mesa 3-D graphics library
@@ -96,6 +96,11 @@ _mesa_GetBooleanv( GLenum pname, GLboolean *params )
if (!params)
return;
+ /* We need this in order to get correct results for
+ * GL_OCCLUSION_TEST_RESULT_HP. There might be other important cases.
+ */
+ FLUSH_VERTICES(ctx, 0);
+
if (MESA_VERBOSE & VERBOSE_API)
fprintf(stderr, "glGetBooleanv %s\n", _mesa_lookup_enum_by_nr(pname));
@@ -1296,6 +1301,11 @@ _mesa_GetDoublev( GLenum pname, GLdouble *params )
if (!params)
return;
+ /* We need this in order to get correct results for
+ * GL_OCCLUSION_TEST_RESULT_HP. There might be other important cases.
+ */
+ FLUSH_VERTICES(ctx, 0);
+
if (MESA_VERBOSE & VERBOSE_API)
fprintf(stderr, "glGetDoublev %s\n", _mesa_lookup_enum_by_nr(pname));
@@ -2495,6 +2505,11 @@ _mesa_GetFloatv( GLenum pname, GLfloat *params )
if (!params)
return;
+ /* We need this in order to get correct results for
+ * GL_OCCLUSION_TEST_RESULT_HP. There might be other important cases.
+ */
+ FLUSH_VERTICES(ctx, 0);
+
if (MESA_VERBOSE & VERBOSE_API)
fprintf(stderr, "glGetFloatv %s\n", _mesa_lookup_enum_by_nr(pname));
@@ -3668,6 +3683,11 @@ _mesa_GetIntegerv( GLenum pname, GLint *params )
if (!params)
return;
+ /* We need this in order to get correct results for
+ * GL_OCCLUSION_TEST_RESULT_HP. There might be other important cases.
+ */
+ FLUSH_VERTICES(ctx, 0);
+
if (MESA_VERBOSE & VERBOSE_API)
fprintf(stderr, "glGetIntegerv %s\n", _mesa_lookup_enum_by_nr(pname));