/* PSPP - a program for statistical analysis.
- Copyright (C) 1997-9, 2000, 2007, 2010, 2011 Free Software Foundation, Inc.
+ Copyright (C) 1997-9, 2000, 2007, 2010, 2011, 2020 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
static int
do_insert (struct lexer *lexer, struct dataset *ds, enum variant variant)
{
- enum lex_syntax_mode syntax_mode;
+ enum segmenter_mode syntax_mode;
enum lex_error_mode error_mode;
char *relative_name;
char *filename;
}
lex_get (lexer);
- syntax_mode = LEX_SYNTAX_INTERACTIVE;
+ syntax_mode = SEG_MODE_INTERACTIVE;
error_mode = LEX_ERROR_CONTINUE;
cd = false;
status = CMD_FAILURE;
{
lex_match (lexer, T_EQUALS);
if (lex_match_id (lexer, "INTERACTIVE"))
- syntax_mode = LEX_SYNTAX_INTERACTIVE;
+ syntax_mode = SEG_MODE_INTERACTIVE;
else if (lex_match_id (lexer, "BATCH"))
- syntax_mode = LEX_SYNTAX_BATCH;
+ syntax_mode = SEG_MODE_BATCH;
else if (lex_match_id (lexer, "AUTO"))
- syntax_mode = LEX_SYNTAX_AUTO;
+ syntax_mode = SEG_MODE_AUTO;
else
{
lex_error_expecting (lexer, "BATCH", "INTERACTIVE", "AUTO");
if (cd)
{
char *directory = dir_name (filename);
- chdir (directory);
+ int ret = chdir (directory);
+ if (0 != ret)
+ {
+ int err = errno;
+ msg (SE, _("Cannot change directory to %s: %s"), directory,
+ strerror (err));
+ status = CMD_FAILURE;
+ }
+
free (directory);
}
}