Fix 3D viewer crash bug. (fixes lp:673603 and lp:804778)

This commit is contained in:
Martin Janitschke 2014-02-23 19:53:55 -05:00 committed by Wayne Stambaugh
parent df8b7c53fb
commit c436f453ac
1 changed files with 7 additions and 2 deletions

View File

@ -68,6 +68,8 @@ void VRML_MODEL_PARSER::Load( const wxString aFilename )
while( GetLine( file, line, &LineNum, 512 ) ) while( GetLine( file, line, &LineNum, 512 ) )
{ {
text = strtok( line, sep_chars ); text = strtok( line, sep_chars );
if ( text == NULL )
continue;
if( stricmp( text, "DEF" ) == 0 || stricmp( text, "Group" ) == 0 ) if( stricmp( text, "DEF" ) == 0 || stricmp( text, "Group" ) == 0 )
{ {
@ -371,6 +373,9 @@ int VRML_MODEL_PARSER::readGeometry( FILE* file, int* LineNum )
strcpy( buffer, line ); strcpy( buffer, line );
text = strtok( buffer, sep_chars ); text = strtok( buffer, sep_chars );
if( text == NULL )
continue;
if( *text == '}' ) if( *text == '}' )
{ {
err = 0; err = 0;
@ -381,7 +386,7 @@ int VRML_MODEL_PARSER::readGeometry( FILE* file, int* LineNum )
{ {
text = strtok( NULL, " ,\t\n\r" ); text = strtok( NULL, " ,\t\n\r" );
if( stricmp( text, "true" ) == 0 ) if( text && stricmp( text, "true" ) == 0 )
{ {
} }
else else
@ -395,7 +400,7 @@ int VRML_MODEL_PARSER::readGeometry( FILE* file, int* LineNum )
{ {
text = strtok( NULL, " ,\t\n\r" ); text = strtok( NULL, " ,\t\n\r" );
if( stricmp( text, "true" ) == 0 ) if( text && stricmp( text, "true" ) == 0 )
{ {
} }
else else