Skip to content

Commit

Permalink
Fix a couple of gcc warnings in picomodel library, check MDx magic ex…
Browse files Browse the repository at this point in the history
…plicitly.
  • Loading branch information
codereader committed Jan 28, 2017
1 parent eebc7bb commit 15f6d14
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 9 deletions.
1 change: 1 addition & 0 deletions libs/picomodel/picointernal.c
Expand Up @@ -46,6 +46,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/* dependencies */
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
#include "picointernal.h"


Expand Down
11 changes: 8 additions & 3 deletions libs/picomodel/pm_md2.c
Expand Up @@ -49,7 +49,7 @@ Nurail: Used pm_md3.c (Randy Reddig) as a template.
#endif

/* md2 model format */
#define MD2_MAGIC "IDP2"
static const char* MD2_MAGIC = "IDP2";
#define MD2_VERSION 8

#define MD2_NUMVERTEXNORMALS 162
Expand Down Expand Up @@ -315,8 +315,11 @@ static int _md2_canload( PM_PARAMS_CANLOAD )
md2 = (md2_t*) buffer;

/* check md2 magic */
if( *((int*) md2->magic) != *((int*) MD2_MAGIC) )
if (md2->magic[0] != MD2_MAGIC[0] || md2->magic[1] != MD2_MAGIC[1] ||
md2->magic[2] != MD2_MAGIC[2] || md2->magic[3] != MD2_MAGIC[3])
{
return PICO_PMV_ERROR_IDENT;
}

/* check md2 version */
if( _pico_little_long( md2->version ) != MD2_VERSION )
Expand Down Expand Up @@ -359,7 +362,9 @@ static picoModel_t *_md2_load( PM_PARAMS_LOAD )
md2 = (md2_t*) buffer;

/* check ident and version */
if( *((int*) md2->magic) != *((int*) MD2_MAGIC) || _pico_little_long( md2->version ) != MD2_VERSION )
if (md2->magic[0] != MD2_MAGIC[0] || md2->magic[1] != MD2_MAGIC[1] ||
md2->magic[2] != MD2_MAGIC[2] || md2->magic[3] != MD2_MAGIC[3] ||
_pico_little_long(md2->version) != MD2_VERSION)
{
/* not an md2 file (todo: set error) */
_pico_printf( PICO_ERROR, "%s is not an MD2 File!", fileName );
Expand Down
11 changes: 8 additions & 3 deletions libs/picomodel/pm_md3.c
Expand Up @@ -45,7 +45,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


/* md3 model format */
#define MD3_MAGIC "IDP3"
static const char* MD3_MAGIC = "IDP3";
#define MD3_VERSION 15

/* md3 vertex scale */
Expand Down Expand Up @@ -159,8 +159,11 @@ static int _md3_canload( PM_PARAMS_CANLOAD )
md3 = (md3_t*) buffer;

/* check md3 magic */
if( *((int*) md3->magic) != *((int*) MD3_MAGIC) )
if (md3->magic[0] != MD3_MAGIC[0] || md3->magic[1] != MD3_MAGIC[1] ||
md3->magic[2] != MD3_MAGIC[2] || md3->magic[3] != MD3_MAGIC[3])
{
return PICO_PMV_ERROR_IDENT;
}

/* check md3 version */
if( _pico_little_long( md3->version ) != MD3_VERSION )
Expand Down Expand Up @@ -208,7 +211,9 @@ static picoModel_t *_md3_load( PM_PARAMS_LOAD )
md3 = (md3_t*) buffer;

/* check ident and version */
if( *((int*) md3->magic) != *((int*) MD3_MAGIC) || _pico_little_long( md3->version ) != MD3_VERSION )
if (md3->magic[0] != MD3_MAGIC[0] || md3->magic[1] != MD3_MAGIC[1] ||
md3->magic[2] != MD3_MAGIC[2] || md3->magic[3] != MD3_MAGIC[3] ||
_pico_little_long( md3->version ) != MD3_VERSION)
{
/* not an md3 file (todo: set error) */
return NULL;
Expand Down
11 changes: 8 additions & 3 deletions libs/picomodel/pm_mdc.c
Expand Up @@ -43,7 +43,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "picointernal.h"

/* mdc model format */
#define MDC_MAGIC "IDPC"
static const char* MDC_MAGIC = "IDPC";
#define MDC_VERSION 2

/* mdc vertex scale */
Expand Down Expand Up @@ -431,8 +431,11 @@ static int _mdc_canload( PM_PARAMS_CANLOAD )
mdc = (mdc_t*) buffer;

/* check mdc magic */
if( *((int*) mdc->magic) != *((int*) MDC_MAGIC) )
if (mdc->magic[0] != MDC_MAGIC[0] || mdc->magic[1] != MDC_MAGIC[1] ||
mdc->magic[2] != MDC_MAGIC[2] || mdc->magic[3] != MDC_MAGIC[3])
{
return PICO_PMV_ERROR_IDENT;
}

/* check mdc version */
if( _pico_little_long( mdc->version ) != MDC_VERSION )
Expand Down Expand Up @@ -483,7 +486,9 @@ static picoModel_t *_mdc_load( PM_PARAMS_LOAD )
mdc = (mdc_t*) buffer;

/* check ident and version */
if( *((int*) mdc->magic) != *((int*) MDC_MAGIC) || _pico_little_long( mdc->version ) != MDC_VERSION )
if (mdc->magic[0] != MDC_MAGIC[0] || mdc->magic[1] != MDC_MAGIC[1] ||
mdc->magic[2] != MDC_MAGIC[2] || mdc->magic[3] != MDC_MAGIC[3] ||
_pico_little_long( mdc->version ) != MDC_VERSION)
{
/* not an mdc file (todo: set error) */
return NULL;
Expand Down

0 comments on commit 15f6d14

Please sign in to comment.