Question How to distinguish signals within a Progress session?

There are two signals that we can control our response to inside a Progress session:
SIGINT (2) - Terminal interrupt signal. = Ctrl-C
SIGPIPE (13) - Write on a pipe with no one to read it.

The SIGPIPE signal causes a session to issue the message 140:
** Pipe to subprocess has been broken. (140)

Is it possible to catch this message inside the session?

Test:
mpro –p signal.p –zp
where signal.p:

Code:
DO ON STOP UNDO, RETRY:
  IF RETRY THEN
  DO:
     MESSAGE _MSG(1) SKIP
     ERROR-STATUS:NUM-MESSAGES
     ERROR-STATUS:GET-MESSAGE(1)
     VIEW-AS ALERT-BOX INFORMATION BUTTONS OK.
     QUIT.
  END.
 
  MESSAGE "Send me a signal (-2 or -13)." VIEW-AS ALERT-BOX INFORMATION BUTTONS OK.
END.
Both SIGINT and SIGPIPE signals put the message 115 to a message stack (“Press space bar to continue.”). In both cases it’s the only change.
But the message 140 is also a Progress message. Is it possible to catch it?

The goal is to have more options for interacting with background processes.
 
Back
Top