gallium: replace some code with a call to st_choose_format()
authorBrian Paul <brian.paul@tungstengraphics.com>
Mon, 28 Apr 2008 15:39:48 +0000 (09:39 -0600)
committerBrian Paul <brian.paul@tungstengraphics.com>
Mon, 28 Apr 2008 15:39:48 +0000 (09:39 -0600)
src/mesa/state_tracker/st_cb_drawpixels.c

index 047ea3816bc9fc759208f4c590cda2ad791843b8..7597ea323c78301f31aa67876d67d5214513deb9 100644 (file)
@@ -983,22 +983,8 @@ st_CopyPixels(GLcontext *ctx, GLint srcx, GLint srcy,
    else {
       /* srcFormat can't be used as a texture format */
       if (type == GL_DEPTH) {
-         static const enum pipe_format zFormats[] = {
-            PIPE_FORMAT_Z16_UNORM,
-            PIPE_FORMAT_Z32_UNORM,
-            PIPE_FORMAT_S8Z24_UNORM,
-            PIPE_FORMAT_Z24S8_UNORM
-         };
-         uint i;
-         texFormat = 0;
-         for (i = 0; i < Elements(zFormats); i++) {
-            if (screen->is_format_supported(screen, zFormats[i],
-                                            PIPE_TEXTURE)) {
-               texFormat = zFormats[i];
-               break;
-            }
-         }
-         assert(texFormat); /* XXX no depth texture formats??? */
+         texFormat = st_choose_format(pipe, GL_DEPTH_COMPONENT, PIPE_TEXTURE);
+         assert(texFormat != PIPE_FORMAT_NONE); /* XXX no depth texture formats??? */
       }
       else {
          /* todo */