* Fix some new GCC 4.3 warnings

* Fix many many strict aliasing warnings, now that it's re-enabled
This commit is contained in:
Tim Angus 2008-11-10 23:55:22 +00:00
parent 7c19978aaa
commit 72dea0a184
19 changed files with 220 additions and 152 deletions

View file

@ -1795,7 +1795,10 @@ Called directly from cgame
void RE_LoadWorldMap( const char *name ) {
int i;
dheader_t *header;
byte *buffer;
union {
byte *b;
void *v;
} buffer;
byte *startMarker;
if ( tr.worldMapLoaded ) {
@ -1813,8 +1816,8 @@ void RE_LoadWorldMap( const char *name ) {
tr.worldMapLoaded = qtrue;
// load it
ri.FS_ReadFile( name, (void **)&buffer );
if ( !buffer ) {
ri.FS_ReadFile( name, &buffer.v );
if ( !buffer.b ) {
ri.Error (ERR_DROP, "RE_LoadWorldMap: %s not found", name);
}
@ -1831,7 +1834,7 @@ void RE_LoadWorldMap( const char *name ) {
startMarker = ri.Hunk_Alloc(0, h_low);
c_gridVerts = 0;
header = (dheader_t *)buffer;
header = (dheader_t *)buffer.b;
fileBase = (byte *)header;
i = LittleLong (header->version);
@ -1863,6 +1866,6 @@ void RE_LoadWorldMap( const char *name ) {
// only set tr.world now that we know the entire level has loaded properly
tr.world = &s_worldData;
ri.FS_FreeFile( buffer );
ri.FS_FreeFile( buffer.v );
}