Imported from ../bash-2.03.tar.gz.
[platform/upstream/bash.git] / eval.c
diff --git a/eval.c b/eval.c
index 28d38e1..3ca5141 100644 (file)
--- a/eval.c
+++ b/eval.c
 #include "input.h"
 #include "execute_cmd.h"
 
+#if defined (HISTORY)
+#  include "bashhist.h"
+#endif
+
 extern int yyparse ();
 
 extern int EOF_reached;
@@ -105,7 +109,7 @@ reader_loop ()
              break;
 
            default:
-             programming_error ("reader_loop: bad jump: code %d", code);
+             command_error ("reader_loop", CMDERR_BADJUMP, code, 0);
            }
        }
 
@@ -161,7 +165,7 @@ static sighandler
 alrm_catcher(i)
      int i;
 {
-  printf ("%ctimed out waiting for input: auto-logout\n", '\07');
+  printf ("\007timed out waiting for input: auto-logout\n");
   jump_to_top_level (EXITPROG);
   SIGRETURN (0);
 }
@@ -269,6 +273,17 @@ parse_string_to_word_list (s, whom)
 {
   WORD_LIST *wl;
   COMMAND *saved_global;
+#if defined (HISTORY)
+  int old_remember_on_history, old_history_expansion_inhibited;
+#endif
+
+#if defined (HISTORY)
+  old_remember_on_history = remember_on_history;
+#  if defined (BANG_HISTORY)
+  old_history_expansion_inhibited = history_expansion_inhibited;
+#  endif
+  bash_history_disable ();
+#endif
 
   push_stream (1);
 
@@ -293,5 +308,12 @@ parse_string_to_word_list (s, whom)
 
   pop_stream ();
 
+#if defined (HISTORY)
+  remember_on_history = old_remember_on_history;
+#  if defined (BANG_HISTORY)
+  history_expansion_inhibited = old_history_expansion_inhibited;
+#  endif /* BANG_HISTORY */
+#endif /* HISTORY */
+
   return (wl);
 }