1
1
CIDs: 823,824,905,906

This commit was SVN r19348.
Этот коммит содержится в:
Matthias Jurenz 2008-08-18 14:22:15 +00:00
родитель 406a61f599
Коммит aa05fba21f

Просмотреть файл

@ -126,7 +126,7 @@ int RFG_Groups_setDefaultGroup( RFG_Groups* groups, const char* name )
int RFG_Groups_readDefFile( RFG_Groups* groups ) int RFG_Groups_readDefFile( RFG_Groups* groups )
{ {
FILE* f; FILE* f;
char orgline[MAX_LINE_LEN]; char* orgline;
uint32_t lineno = 0; uint32_t lineno = 0;
uint8_t parse_err = 0; uint8_t parse_err = 0;
@ -145,10 +145,13 @@ int RFG_Groups_readDefFile( RFG_Groups* groups )
return 0; return 0;
} }
orgline = ( char* )malloc( MAX_LINE_LEN * sizeof( char ) );
if( orgline == NULL )
return 0;
/* read lines */ /* read lines */
while( fgets( orgline, MAX_LINE_LEN, f ) while( !parse_err && fgets( orgline, MAX_LINE_LEN - 1, f ) )
&& !parse_err )
{ {
char group[STRBUF_SIZE]; char group[STRBUF_SIZE];
char* p; char* p;
@ -165,12 +168,18 @@ int RFG_Groups_readDefFile( RFG_Groups* groups )
lineno++; lineno++;
if( strlen( line ) == 0 ) if( strlen( line ) == 0 )
{
free( line );
continue; continue;
}
trim( line ); trim( line );
if( line[0] == '#' ) if( line[0] == '#' )
{
free( line );
continue; continue;
}
/* search for '=' /* search for '='
e.g. "GROUP=func1;func2;func3" e.g. "GROUP=func1;func2;func3"
@ -181,6 +190,7 @@ int RFG_Groups_readDefFile( RFG_Groups* groups )
if( p == NULL ) if( p == NULL )
{ {
parse_err = 1; parse_err = 1;
free( line );
break; break;
} }
@ -225,7 +235,9 @@ int RFG_Groups_readDefFile( RFG_Groups* groups )
fprintf( stderr, "%s:%u: Could not parse line '%s'\n", fprintf( stderr, "%s:%u: Could not parse line '%s'\n",
groups->deffile, lineno, orgline ); groups->deffile, lineno, orgline );
} }
free( orgline );
fclose( f ); fclose( f );
return parse_err ? 0 : 1; return parse_err ? 0 : 1;