diff options
author | michal <michal@michal-laptop.(none)> | 2007-07-27 10:05:40 +0200 |
---|---|---|
committer | michal <michal@michal-laptop.(none)> | 2007-07-27 10:05:40 +0200 |
commit | e0a26b046764ae80748b347395ab1b27de83651e (patch) | |
tree | ea702756a3e9cedc3b3c41241cbff0956ddc82bc /progs/osdemos/ostest1.c | |
parent | 0360b49afbcd839f99ba0745d01cf9dc5be4d122 (diff) | |
parent | e3cef5887540016a6d198598cb50bebe09e3f4cf (diff) |
Merge branch 'master' of git+ssh://[email protected]/git/mesa/mesa into softpipe_0_1_branch
Diffstat (limited to 'progs/osdemos/ostest1.c')
-rw-r--r-- | progs/osdemos/ostest1.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/progs/osdemos/ostest1.c b/progs/osdemos/ostest1.c index 001e3686162..2c7adfc3537 100644 --- a/progs/osdemos/ostest1.c +++ b/progs/osdemos/ostest1.c @@ -409,6 +409,8 @@ test(GLenum type, GLint bits, const char *filename) printf("Rendering %d bit/channel image: %s\n", bits, filename); + OSMesaColorClamp(GL_TRUE); + init_context(); render_image(); if (Gradient) @@ -421,7 +423,7 @@ test(GLenum type, GLint bits, const char *filename) if (WriteFiles && filename != NULL) { if (type == GL_UNSIGNED_SHORT) { GLushort *buffer16 = (GLushort *) buffer; - GLubyte *buffer8 = malloc(WIDTH * HEIGHT * 4); + GLubyte *buffer8 = (GLubyte *) malloc(WIDTH * HEIGHT * 4); int i; for (i = 0; i < WIDTH * HEIGHT * 4; i++) buffer8[i] = buffer16[i] >> 8; @@ -430,8 +432,9 @@ test(GLenum type, GLint bits, const char *filename) } else if (type == GL_FLOAT) { GLfloat *buffer32 = (GLfloat *) buffer; - GLubyte *buffer8 = malloc(WIDTH * HEIGHT * 4); + GLubyte *buffer8 = (GLubyte *) malloc(WIDTH * HEIGHT * 4); int i; + /* colors may be outside [0,1] so we need to clamp */ for (i = 0; i < WIDTH * HEIGHT * 4; i++) buffer8[i] = (GLubyte) (buffer32[i] * 255.0); write_ppm(filename, buffer8, WIDTH, HEIGHT); |