mirror of
https://github.com/fish-shell/fish-shell.git
synced 2025-03-27 14:45:13 +08:00
Fix crash bug in cyntax validator when using an illegal command name. Thanks to Martin Bähr for the report.
darcs-hash:20060907201559-ac50b-34fa01bbc40eafddcc64a5111bebd88aab75a8d4.gz
This commit is contained in:
parent
227a5da02c
commit
72d73b7fdd
32
parser.c
32
parser.c
@ -3294,25 +3294,29 @@ int parser_test( const wchar_t * buff,
|
|||||||
arg_count = -1;
|
arg_count = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
if( cmd )
|
||||||
Try to make sure the second argument to 'for' is 'in'
|
|
||||||
*/
|
|
||||||
if( wcscmp( cmd, L"for" ) == 0 )
|
|
||||||
{
|
{
|
||||||
if( arg_count == 2 )
|
|
||||||
|
/*
|
||||||
|
Try to make sure the second argument to 'for' is 'in'
|
||||||
|
*/
|
||||||
|
if( wcscmp( cmd, L"for" ) == 0 )
|
||||||
{
|
{
|
||||||
if( wcscmp( tok_last( &tok ), L"in" ) != 0 )
|
if( arg_count == 2 )
|
||||||
{
|
{
|
||||||
err = 1;
|
if( wcscmp( tok_last( &tok ), L"in" ) != 0 )
|
||||||
|
|
||||||
if( out )
|
|
||||||
{
|
{
|
||||||
error( SYNTAX_ERROR,
|
err = 1;
|
||||||
tok_get_pos( &tok ),
|
|
||||||
BUILTIN_FOR_ERR_IN,
|
|
||||||
L"for" );
|
|
||||||
|
|
||||||
print_errors( out, prefix );
|
if( out )
|
||||||
|
{
|
||||||
|
error( SYNTAX_ERROR,
|
||||||
|
tok_get_pos( &tok ),
|
||||||
|
BUILTIN_FOR_ERR_IN,
|
||||||
|
L"for" );
|
||||||
|
|
||||||
|
print_errors( out, prefix );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user