X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flanguage%2Fdata-io%2Fget-data.c;fp=src%2Flanguage%2Fdata-io%2Fget-data.c;h=f2c294264ce951c5e66597d5a66cd0cfd55f8e69;hb=6363022343d69fa3662e5043aad2dd0e33eb790f;hp=995be8e7ce896212cd9775af4789c1aa1441360a;hpb=af34772f88fab127edb77d4a15bc5e6d5848d84e;p=pspp diff --git a/src/language/data-io/get-data.c b/src/language/data-io/get-data.c index 995be8e7ce..f2c294264c 100644 --- a/src/language/data-io/get-data.c +++ b/src/language/data-io/get-data.c @@ -174,14 +174,20 @@ parse_get_psql (struct lexer *lexer, struct dataset *ds) if ( lex_match_id (lexer, "ASSUMEDSTRWIDTH")) { lex_match (lexer, T_EQUALS); - psql.str_width = lex_integer (lexer); - lex_get (lexer); + if (lex_force_int (lexer)) + { + psql.str_width = lex_integer (lexer); + lex_get (lexer); + } } else if ( lex_match_id (lexer, "BSIZE")) { lex_match (lexer, T_EQUALS); - psql.bsize = lex_integer (lexer); - lex_get (lexer); + if (lex_force_int (lexer)) + { + psql.bsize = lex_integer (lexer); + lex_get (lexer); + } } else if ( lex_match_id (lexer, "UNENCRYPTED")) { @@ -250,8 +256,11 @@ parse_spreadsheet (struct lexer *lexer, char **filename, if ( lex_match_id (lexer, "ASSUMEDSTRWIDTH")) { lex_match (lexer, T_EQUALS); - opts->asw = lex_integer (lexer); - lex_get (lexer); + if (lex_force_int (lexer)) + { + opts->asw = lex_integer (lexer); + lex_get (lexer); + } } else if (lex_match_id (lexer, "SHEET")) { @@ -268,6 +277,9 @@ parse_spreadsheet (struct lexer *lexer, char **filename, } else if (lex_match_id (lexer, "INDEX")) { + if (!lex_force_int (lexer)) + goto error; + opts->sheet_index = lex_integer (lexer); if (opts->sheet_index <= 0) {