mesa/get: fix enum16 big-endian getting.
[mesa.git] / src / mesa / main / framebuffer.c
index 0abfdd83902f78dffca00f9d18e95600c14eb9ee..5061c179ee961b30b01c98c30dbfc7d4f6b2ecc4 100644 (file)
@@ -31,7 +31,7 @@
 
 #include <stdio.h>
 #include "glheader.h"
-#include "imports.h"
+
 #include "blend.h"
 #include "buffers.h"
 #include "context.h"
@@ -45,6 +45,7 @@
 #include "texobj.h"
 #include "glformats.h"
 #include "state.h"
+#include "util/u_memory.h"
 
 
 
@@ -435,7 +436,6 @@ _mesa_update_framebuffer_visual(struct gl_context *ctx,
                                struct gl_framebuffer *fb)
 {
    memset(&fb->Visual, 0, sizeof(fb->Visual));
-   fb->Visual.rgbMode = GL_TRUE; /* assume this */
 
    /* find first RGB renderbuffer */
    for (unsigned i = 0; i < BUFFER_COUNT; i++) {
@@ -458,7 +458,7 @@ _mesa_update_framebuffer_visual(struct gl_context *ctx,
             fb->Visual.alphaBits = _mesa_get_format_bits(fmt, GL_ALPHA_BITS);
             fb->Visual.rgbBits = fb->Visual.redBits
                + fb->Visual.greenBits + fb->Visual.blueBits;
-            if (_mesa_get_format_color_encoding(fmt) == GL_SRGB)
+            if (_mesa_is_format_srgb(fmt))
                 fb->Visual.sRGBCapable = ctx->Extensions.EXT_sRGB;
             break;
          }
@@ -482,7 +482,6 @@ _mesa_update_framebuffer_visual(struct gl_context *ctx,
       const struct gl_renderbuffer *rb =
          fb->Attachment[BUFFER_DEPTH].Renderbuffer;
       const mesa_format fmt = rb->Format;
-      fb->Visual.haveDepthBuffer = GL_TRUE;
       fb->Visual.depthBits = _mesa_get_format_bits(fmt, GL_DEPTH_BITS);
    }
 
@@ -490,7 +489,6 @@ _mesa_update_framebuffer_visual(struct gl_context *ctx,
       const struct gl_renderbuffer *rb =
          fb->Attachment[BUFFER_STENCIL].Renderbuffer;
       const mesa_format fmt = rb->Format;
-      fb->Visual.haveStencilBuffer = GL_TRUE;
       fb->Visual.stencilBits = _mesa_get_format_bits(fmt, GL_STENCIL_BITS);
    }
 
@@ -498,7 +496,6 @@ _mesa_update_framebuffer_visual(struct gl_context *ctx,
       const struct gl_renderbuffer *rb =
          fb->Attachment[BUFFER_ACCUM].Renderbuffer;
       const mesa_format fmt = rb->Format;
-      fb->Visual.haveAccumBuffer = GL_TRUE;
       fb->Visual.accumRedBits = _mesa_get_format_bits(fmt, GL_RED_BITS);
       fb->Visual.accumGreenBits = _mesa_get_format_bits(fmt, GL_GREEN_BITS);
       fb->Visual.accumBlueBits = _mesa_get_format_bits(fmt, GL_BLUE_BITS);
@@ -506,6 +503,7 @@ _mesa_update_framebuffer_visual(struct gl_context *ctx,
    }
 
    compute_depth_max(fb);
+   _mesa_update_allow_draw_out_of_order(ctx);
 }
 
 
@@ -856,8 +854,7 @@ _mesa_get_color_read_format(struct gl_context *ctx,
          return GL_RGB;
       case MESA_FORMAT_RG_FLOAT32:
       case MESA_FORMAT_RG_FLOAT16:
-      case MESA_FORMAT_R8G8_UNORM:
-      case MESA_FORMAT_R8G8_SNORM:
+      case MESA_FORMAT_RG_UNORM8:
          return GL_RG;
       case MESA_FORMAT_RG_SINT32:
       case MESA_FORMAT_RG_UINT32: