mirror of
https://github.com/openmoh/openmohaa.git
synced 2025-05-09 20:18:17 +03:00
Optimized G_Command_ProcessFile a little bit
This commit is contained in:
parent
c115796137
commit
84ecf838d4
1 changed files with 48 additions and 47 deletions
|
@ -2351,61 +2351,62 @@ char *CanonicalTikiName( const char *szInName )
|
|||
|
||||
qboolean G_Command_ProcessFile( const char * filename, qboolean quiet )
|
||||
{
|
||||
char *buffer;
|
||||
const char *bufstart;
|
||||
char com_token[ MAX_STRING_CHARS ];
|
||||
char* buffer;
|
||||
const char* bufstart;
|
||||
const char* token;
|
||||
int numTokens = 0;
|
||||
|
||||
if( gi.FS_ReadFile( filename, ( void ** )&buffer, quiet ) == -1 )
|
||||
if (gi.FS_ReadFile(filename, (void**)&buffer, quiet) == -1)
|
||||
{
|
||||
return qfalse;
|
||||
}
|
||||
|
||||
if( !quiet )
|
||||
gi.DPrintf( "G_Command_ProcessFile: %s\n", filename );
|
||||
if (!quiet)
|
||||
gi.DPrintf("G_Command_ProcessFile: %s\n", filename);
|
||||
|
||||
bufstart = buffer;
|
||||
|
||||
while( 1 )
|
||||
while (1)
|
||||
{
|
||||
Event *ev;
|
||||
|
||||
// grab each line as we go
|
||||
strcpy( com_token, COM_ParseExt( &buffer, qtrue ) );
|
||||
if( !com_token[ 0 ] )
|
||||
token = COM_ParseExt(&buffer, qtrue);
|
||||
if (!token[0]) {
|
||||
break;
|
||||
}
|
||||
|
||||
if(
|
||||
!Q_stricmp( com_token, "end" ) ||
|
||||
!Q_stricmp( com_token, "server" )
|
||||
if (
|
||||
!Q_stricmp(token, "end") ||
|
||||
!Q_stricmp(token, "server")
|
||||
)
|
||||
{
|
||||
// skip the line
|
||||
while( 1 )
|
||||
while (1)
|
||||
{
|
||||
strcpy( com_token, COM_ParseExt( &buffer, qfalse ) );
|
||||
if( !com_token[ 0 ] )
|
||||
token = COM_ParseExt(&buffer, qfalse);
|
||||
if (!token[0]) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
// Create the event
|
||||
ev = new Event( com_token );
|
||||
Event ev(token);
|
||||
|
||||
// get the rest of the line
|
||||
while( 1 )
|
||||
{
|
||||
strcpy( com_token, COM_ParseExt( &buffer, qfalse ) );
|
||||
if( !com_token[ 0 ] )
|
||||
while (1) {
|
||||
token = COM_ParseExt(&buffer, qfalse);
|
||||
if (!token[0]) {
|
||||
break;
|
||||
|
||||
ev->AddToken( com_token );
|
||||
}
|
||||
|
||||
Director.ProcessEvent( ev );
|
||||
ev.AddToken(token);
|
||||
}
|
||||
|
||||
gi.FS_FreeFile( ( void * )bufstart );
|
||||
Director.ProcessEvent(ev);
|
||||
}
|
||||
|
||||
gi.FS_FreeFile((void*)bufstart);
|
||||
|
||||
return qtrue;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue