David,
I had a look at the source code, and it seems that SIGTERM handling
via 'signal on halt' could easily be added in SystemInterpreter.cpp like
this:


*** interpreter/platform/unix/SystemInterpreter.cpp
--- oorexx-code-0/interpreter/platform/unix/SystemInterpreter.cpp
2012-10-31 11:20:50.140630832 +0100 
*************** 
*** 101,107 ****
  #endif
  
      // if the signal is a ctrl-C, we perform a halt operation
!     if (sig == SIGINT)
      {
          Interpreter::haltAllActivities();
          return;
--- 101,107 ----
  #endif
  
      // if the signal is a ctrl-C, we perform a halt operation
!     if (sig == SIGINT || sig == SIGTERM )
      {
          Interpreter::haltAllActivities();
          return;
***************
*** 132,140 ****
--- 132,142 ----
  /* that we now get a coredump instead of a hangup                             
 */ 
      sigaction(SIGINT, NULL, &old_action);
+     sigaction(SIGTERM, NULL, &old_action);
      if (old_action.sa_handler == NULL)           /* not set by ext.
exit handler*/ {
          sigaction(SIGINT, &new_action, NULL);  /* exitClear on
SIGTERM signal     */
+         sigaction(SIGTERM, &new_action, NULL);  /* exitClear on
SIGTERM signal     */ }
  }
                           

What do you think about this? Please double check my idea. As I'm not an
expert of the ooRexx code there might be subtleties I'm not aware of.



-- 
Manfred

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to