X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flanguage%2Fdictionary%2Fvector.c;h=e7e70cecb28a288549b22fdbf9641b2b4b8cd009;hb=2f3bca35516d8f3b3df76b3152fd5c77ff1f09cf;hp=6560288c472e1232aed890d6d3e8dde7c4540998;hpb=e83d90847323b194bdb04267f9b0eb557fb139d4;p=pspp diff --git a/src/language/dictionary/vector.c b/src/language/dictionary/vector.c index 6560288c47..e7e70cecb2 100644 --- a/src/language/dictionary/vector.c +++ b/src/language/dictionary/vector.c @@ -124,13 +124,10 @@ cmd_vector (struct lexer *lexer, struct dataset *ds) { if (lex_is_integer (lexer) && var_cnt == 0) { + if (!lex_force_int_range (lexer, NULL, 1, INT_MAX)) + goto fail; var_cnt = lex_integer (lexer); lex_get (lexer); - if (var_cnt <= 0) - { - msg (SE, _("Vectors must have at least one element.")); - goto fail; - } } else if (lex_token (lexer) == T_ID && !seen_format) { @@ -167,8 +164,8 @@ cmd_vector (struct lexer *lexer, struct dataset *ds) } if (dict_lookup_var (dict, name)) { - free (name); msg (SE, _("%s is an existing variable name."), name); + free (name); goto fail; } free (name);