[Piglit] [PATCH 4/4] stencil-twoside: use ATI syntax for StencilOpSeparate too
Luca Barbieri
luca at luca-barbieri.com
Mon Aug 16 05:46:08 PDT 2010
If OpenGL 2 is not supported, GLEW doesn't set the pointer for the
GL2 syntax function, leading to a segfault.
---
tests/general/stencil-twoside.c | 30 ++++++++++++++++++++----------
1 files changed, 20 insertions(+), 10 deletions(-)
diff --git a/tests/general/stencil-twoside.c b/tests/general/stencil-twoside.c
index a85f338..d32dde0 100644
--- a/tests/general/stencil-twoside.c
+++ b/tests/general/stencil-twoside.c
@@ -80,12 +80,14 @@ piglit_display(void)
if (use20syntax) {
glStencilFuncSeparate(GL_FRONT, GL_ALWAYS, 0, ~0);
glStencilFuncSeparate(GL_BACK, GL_ALWAYS, 0, ~0);
+ glStencilOpSeparate(GL_FRONT, GL_KEEP, GL_KEEP, GL_INCR);
+ glStencilOpSeparate(GL_BACK, GL_KEEP, GL_KEEP, GL_DECR);
}
else {
glStencilFuncSeparateATI(GL_ALWAYS, GL_ALWAYS, 0, ~0);
+ glStencilOpSeparateATI(GL_FRONT, GL_KEEP, GL_KEEP, GL_INCR);
+ glStencilOpSeparateATI(GL_BACK, GL_KEEP, GL_KEEP, GL_DECR);
}
- glStencilOpSeparate(GL_FRONT, GL_KEEP, GL_KEEP, GL_INCR);
- glStencilOpSeparate(GL_BACK, GL_KEEP, GL_KEEP, GL_DECR);
glColor3f(0.9, 0.9, 0.9);
for (i = 0 ; i < (max_stencil + 5) ; i++) {
@@ -102,12 +104,14 @@ piglit_display(void)
if (use20syntax) {
glStencilFuncSeparate(GL_FRONT, GL_ALWAYS, 0, ~0);
glStencilFuncSeparate(GL_BACK, GL_ALWAYS, 0, ~0);
+ glStencilOpSeparate(GL_FRONT, GL_KEEP, GL_KEEP, GL_DECR);
+ glStencilOpSeparate(GL_BACK, GL_KEEP, GL_KEEP, GL_INCR);
}
else {
glStencilFuncSeparateATI(GL_ALWAYS, GL_ALWAYS, 0, ~0);
+ glStencilOpSeparateATI(GL_FRONT, GL_KEEP, GL_KEEP, GL_DECR);
+ glStencilOpSeparateATI(GL_BACK, GL_KEEP, GL_KEEP, GL_INCR);
}
- glStencilOpSeparate(GL_FRONT, GL_KEEP, GL_KEEP, GL_DECR);
- glStencilOpSeparate(GL_BACK, GL_KEEP, GL_KEEP, GL_INCR);
glColor3f(0.9, 0.9, 0.9);
for (i = 0 ; i < (max_stencil + 5) ; i++) {
@@ -124,12 +128,14 @@ piglit_display(void)
if (use20syntax) {
glStencilFuncSeparate(GL_FRONT, GL_NEVER, 0, ~0);
glStencilFuncSeparate(GL_BACK, GL_ALWAYS, 0, ~0);
+ glStencilOpSeparate(GL_FRONT, GL_KEEP, GL_KEEP, GL_DECR);
+ glStencilOpSeparate(GL_BACK, GL_KEEP, GL_KEEP, GL_INCR);
}
else {
glStencilFuncSeparateATI(GL_NEVER, GL_ALWAYS, 0, ~0);
+ glStencilOpSeparateATI(GL_FRONT, GL_KEEP, GL_KEEP, GL_DECR);
+ glStencilOpSeparateATI(GL_BACK, GL_KEEP, GL_KEEP, GL_INCR);
}
- glStencilOpSeparate(GL_FRONT, GL_KEEP, GL_KEEP, GL_DECR);
- glStencilOpSeparate(GL_BACK, GL_KEEP, GL_KEEP, GL_INCR);
glColor3f(0.9, 0.9, 0.9);
for (i = 0 ; i < (max_stencil + 5) ; i++) {
@@ -148,12 +154,14 @@ piglit_display(void)
if (use20syntax) {
glStencilFuncSeparate(GL_FRONT, GL_ALWAYS, 0, ~0);
glStencilFuncSeparate(GL_BACK, GL_ALWAYS, 0, ~0);
+ glStencilOpSeparate(GL_FRONT, GL_KEEP, GL_KEEP, GL_INCR);
+ glStencilOpSeparate(GL_BACK, GL_KEEP, GL_KEEP, GL_DECR);
}
else {
glStencilFuncSeparateATI(GL_ALWAYS, GL_ALWAYS, 0, ~0);
+ glStencilOpSeparateATI(GL_FRONT, GL_KEEP, GL_KEEP, GL_INCR);
+ glStencilOpSeparateATI(GL_BACK, GL_KEEP, GL_KEEP, GL_DECR);
}
- glStencilOpSeparate(GL_FRONT, GL_KEEP, GL_KEEP, GL_INCR);
- glStencilOpSeparate(GL_BACK, GL_KEEP, GL_KEEP, GL_DECR);
glColor3f(0.9, 0.9, 0.9);
for (i = 0 ; i < (max_stencil + 5) ; i++) {
@@ -172,12 +180,14 @@ piglit_display(void)
if (use20syntax) {
glStencilFuncSeparate(GL_FRONT, GL_ALWAYS, 0, ~0);
glStencilFuncSeparate(GL_BACK, GL_ALWAYS, 0, ~0);
+ glStencilOpSeparate(GL_FRONT, GL_KEEP, GL_KEEP, GL_KEEP);
+ glStencilOpSeparate(GL_BACK, GL_KEEP, GL_KEEP, GL_INCR_WRAP);
}
else {
glStencilFuncSeparateATI(GL_ALWAYS, GL_ALWAYS, 0, ~0);
+ glStencilOpSeparateATI(GL_FRONT, GL_KEEP, GL_KEEP, GL_KEEP);
+ glStencilOpSeparateATI(GL_BACK, GL_KEEP, GL_KEEP, GL_INCR_WRAP);
}
- glStencilOpSeparate(GL_FRONT, GL_KEEP, GL_KEEP, GL_KEEP);
- glStencilOpSeparate(GL_BACK, GL_KEEP, GL_KEEP, GL_INCR_WRAP);
glColor3f(0.9, 0.9, 0.9);
for (i = 0 ; i < (max_stencil + 5) ; i++) {
--
1.7.0.4
More information about the Piglit
mailing list