* Fix some new GCC 4.3 warnings
* Fix many many strict aliasing warnings, now that it's re-enabled
This commit is contained in:
parent
7c19978aaa
commit
72dea0a184
19 changed files with 220 additions and 152 deletions
|
@ -50,7 +50,10 @@ void R_LoadBMP( const char *name, byte **pic, int *width, int *height )
|
|||
int row, column;
|
||||
byte *buf_p;
|
||||
byte *end;
|
||||
byte *buffer = NULL;
|
||||
union {
|
||||
byte *b;
|
||||
void *v;
|
||||
} buffer;
|
||||
int length;
|
||||
BMPHeader_t bmpHeader;
|
||||
byte *bmpRGBA;
|
||||
|
@ -66,8 +69,8 @@ void R_LoadBMP( const char *name, byte **pic, int *width, int *height )
|
|||
//
|
||||
// load the file
|
||||
//
|
||||
length = ri.FS_ReadFile( ( char * ) name, (void **)&buffer);
|
||||
if (!buffer || length < 0) {
|
||||
length = ri.FS_ReadFile( ( char * ) name, &buffer.v);
|
||||
if (!buffer.b || length < 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -76,8 +79,8 @@ void R_LoadBMP( const char *name, byte **pic, int *width, int *height )
|
|||
ri.Error( ERR_DROP, "LoadBMP: header too short (%s)\n", name );
|
||||
}
|
||||
|
||||
buf_p = buffer;
|
||||
end = buffer + length;
|
||||
buf_p = buffer.b;
|
||||
end = buffer.b + length;
|
||||
|
||||
bmpHeader.id[0] = *buf_p++;
|
||||
bmpHeader.id[1] = *buf_p++;
|
||||
|
@ -119,12 +122,12 @@ void R_LoadBMP( const char *name, byte **pic, int *width, int *height )
|
|||
buf_p += sizeof(bmpHeader.palette);
|
||||
}
|
||||
|
||||
if (buffer + bmpHeader.bitmapDataOffset > end)
|
||||
if (buffer.b + bmpHeader.bitmapDataOffset > end)
|
||||
{
|
||||
ri.Error( ERR_DROP, "LoadBMP: invalid offset value in header (%s)\n", name );
|
||||
}
|
||||
|
||||
buf_p = buffer + bmpHeader.bitmapDataOffset;
|
||||
buf_p = buffer.b + bmpHeader.bitmapDataOffset;
|
||||
|
||||
if ( bmpHeader.id[0] != 'B' && bmpHeader.id[1] != 'M' )
|
||||
{
|
||||
|
@ -231,6 +234,6 @@ void R_LoadBMP( const char *name, byte **pic, int *width, int *height )
|
|||
}
|
||||
}
|
||||
|
||||
ri.FS_FreeFile( buffer );
|
||||
ri.FS_FreeFile( buffer.v );
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue