diff src/sighandlers.cc @ 3162:7c96e85c76db

[project @ 1998-04-08 18:19:35 by jwe]
author jwe
date Wed, 08 Apr 1998 18:21:04 +0000
parents 5708b8bb4f06
children 390d5e396682
line wrap: on
line diff
--- a/src/sighandlers.cc	Mon Mar 02 06:27:23 1998 +0000
+++ b/src/sighandlers.cc	Wed Apr 08 18:21:04 1998 +0000
@@ -89,6 +89,12 @@
   do { } while (0)
 #endif
 
+#if defined (SIGABRT)
+#define OCTAVE_MEMORY_EXHAUSTED_ERROR SIGABRT
+#else
+#define OCTAVE_MEMORY_EXHAUSTED_ERROR (-1)
+#endif
+
 void
 octave_save_signal_mask (void)
 {
@@ -128,7 +134,14 @@
 
       save_user_variables ();
 
-      clean_up_and_exit (sig_number);
+      if (sig_number < 0)
+	exit (1);
+      else
+	{
+	  octave_set_signal_handler (sig_number, SIG_DFL);
+
+	  kill (getpid (), sig_number);
+	}
     }
 }
 
@@ -145,7 +158,7 @@
       panic_impossible ();
     }
   else
-    my_friendly_exit ("operator new", 1);
+    my_friendly_exit ("operator new", OCTAVE_MEMORY_EXHAUSTED_ERROR);
 }
 
 sig_handler *