diff --git a/libs/picomodel/lwo/lwo2.c b/libs/picomodel/lwo/lwo2.c index ff83d5c22b..b3dbc68ebf 100644 --- a/libs/picomodel/lwo/lwo2.c +++ b/libs/picomodel/lwo/lwo2.c @@ -292,6 +292,9 @@ int lwValidateObject( char *filename, picoMemStream_t *fp, unsigned int *failID, if ( id != ID_FORM ) { if ( failpos ) *failpos = 12; + + formsize++; /* silence compiler warning about unused variable */ + return PICO_PMV_ERROR_SIZE; } diff --git a/libs/picomodel/lwo/lwob.c b/libs/picomodel/lwo/lwob.c index 62ba161d84..348d3e5114 100644 --- a/libs/picomodel/lwo/lwob.c +++ b/libs/picomodel/lwo/lwob.c @@ -10,6 +10,7 @@ Ernie Wright 17 Sep 00 #include "../picointernal.h" #include "lwo2.h" +#include /* disable warnings */ #ifdef WIN32 @@ -550,7 +551,7 @@ int lwGetPolygons5( picoMemStream_t *fp, int cksize, lwPolygonList *plist, int p bp += 2; } j -= 1; - pp->surf = ( lwSurface * ) j; + pp->surf = ( lwSurface * ) (intptr_t) j; pp++; pv += nv; @@ -720,6 +721,7 @@ int lwValidateObject5( char *filename, picoMemStream_t *fp, unsigned int *failID if ( id != ID_FORM || type != ID_LWOB ) { if ( failpos ) *failpos = 12; + formsize++; /* silence compiler warning about unused variable */ return PICO_PMV_ERROR_IDENT; } diff --git a/libs/picomodel/lwo/pntspols.c b/libs/picomodel/lwo/pntspols.c index a7f54d251f..784f1b4d2f 100644 --- a/libs/picomodel/lwo/pntspols.c +++ b/libs/picomodel/lwo/pntspols.c @@ -9,7 +9,7 @@ Ernie Wright 17 Sep 00 #include "../picointernal.h" #include "lwo2.h" - +#include /* ====================================================================== @@ -334,7 +334,8 @@ int lwResolvePolySurfaces( lwPolygonList *polygon, lwTagList *tlist, lwSurface **surf, int *nsurfs ) { lwSurface **s, *st; - int i, index; + int i; + intptr_t index; if ( tlist->count == 0 ) return 1; @@ -353,7 +354,7 @@ int lwResolvePolySurfaces( lwPolygonList *polygon, lwTagList *tlist, } for ( i = 0; i < polygon->count; i++ ) { - index = ( int ) polygon->pol[ i ].surf; + index = ( intptr_t ) polygon->pol[ i ].surf; if ( index < 0 || index > tlist->count ) return 0; if ( !s[ index ] ) { s[ index ] = lwDefaultSurface(); @@ -525,9 +526,9 @@ int lwGetPolygonTags( picoMemStream_t *fp, int cksize, lwTagList *tlist, j = getVX( fp ) + tlist->offset; rlen = get_flen(); if ( rlen < 0 || rlen > cksize ) return 0; - + switch ( type ) { - case ID_SURF: plist->pol[ i ].surf = ( lwSurface * ) j; break; + case ID_SURF: plist->pol[ i ].surf = ( lwSurface * ) (intptr_t) j; break; case ID_PART: plist->pol[ i ].part = j; break; case ID_SMGP: plist->pol[ i ].smoothgrp = j; break; }