X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fterminal%2Fmain.c;h=c78756383adbd1d590bd6ffe965e46837eb0820d;hb=6a8d0d2d8bf801c21d71d6c3317ab97d110175cf;hp=c19a1c78eaade7c0c40e72cfe736d1ac7849b60a;hpb=e195fccfab97205acb29f90fd1168488d49f1573;p=pspp diff --git a/src/ui/terminal/main.c b/src/ui/terminal/main.c index c19a1c78ea..c78756383a 100644 --- a/src/ui/terminal/main.c +++ b/src/ui/terminal/main.c @@ -1,5 +1,5 @@ /* PSPP - a program for statistical analysis. - Copyright (C) 1997-9, 2000, 2006, 2007, 2009, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-2000, 2006-2007, 2009-2014 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 @@ -33,7 +33,6 @@ #include "data/dataset.h" #include "data/dictionary.h" #include "data/file-handle-def.h" -#include "data/file-name.h" #include "data/session.h" #include "data/settings.h" #include "data/variable.h" @@ -49,12 +48,10 @@ #include "math/random.h" #include "output/driver.h" #include "output/message-item.h" -#include "ui/debugger.h" #include "ui/source-init-opts.h" #include "ui/terminal/terminal-opts.h" #include "ui/terminal/terminal-reader.h" #include "ui/terminal/terminal.h" -#include "ui/terminal/terminal-opts.h" #include "gl/fatal-signal.h" #include "gl/progname.h" @@ -92,13 +89,14 @@ main (int argc, char **argv) fpu_init (); gsl_set_error_handler_off (); + output_engine_push (); fh_init (); settings_init (); terminal_check_size (); random_init (); lexer = lex_create (); - the_session = session_create (); + the_session = session_create (NULL); dataset_create (the_session, ""); parser = argv_parser_create (); @@ -149,7 +147,7 @@ main (int argc, char **argv) lex_discard_noninteractive (lexer); } else if (result == CMD_CASCADING_FAILURE - && lex_get_error_mode (lexer) != LEX_ERROR_INTERACTIVE) + && lex_get_error_mode (lexer) != LEX_ERROR_TERMINAL) { msg (SE, _("Stopping syntax file processing here to avoid " "a cascade of dependent command failures.")); @@ -162,13 +160,13 @@ main (int argc, char **argv) } + output_engine_pop (); session_destroy (the_session); random_done (); settings_done (); fh_done (); lex_destroy (lexer); - output_close (); i18n_done (); return msg_ui_any_errors (); @@ -195,9 +193,6 @@ bug_handler(int sig) recurse. */ signal (sig, SIG_DFL); -#if DEBUGGING - connect_debugger (); -#endif switch (sig) { case SIGABRT: @@ -231,6 +226,8 @@ output_msg (const struct msg *m_, void *lexer_) m.last_line = lex_get_last_line_number (lexer, 0); } + m.command_name = CONST_CAST (char *, output_get_command_name ()); + message_item_submit (message_item_create (&m)); }