Browse Source

The Gimp puts out a different bogus color mask for 32-bit .bmp files. :)

Ryan C. Gordon 10 years ago
parent
commit
f7461cdc9a
1 changed files with 7 additions and 0 deletions
  1. 7 0
      src/video/SDL_bmp.c

+ 7 - 0
src/video/SDL_bmp.c

@@ -254,6 +254,13 @@ SDL_LoadBMP_RW(SDL_RWops * src, int freesrc)
                 Rmask = 0x00FF0000;
                 Gmask = 0x0000FF00;
                 Bmask = 0x000000FF;
+            } else if ((Rmask == 0xFFFFFF00) && (Gmask == 0xFFFFFF00) &&
+                       (Bmask == 0xFFFFFF00) && (Amask == 0xFFFFFF00) ) {
+                /* argh, The Gimp seems to put out different bogus masks! */
+                Amask = 0x000000FF;
+                Rmask = 0xFF000000;
+                Gmask = 0x00FF0000;
+                Bmask = 0x0000FF00;
             }
 
             break;