I want to clean up (close curses) on termination on signals.
Is there a way of doing this for all relevant signals at once, or I
should install separate handlers for each?
Is there a better way of executing the old handler than the following?
fixIO $ \old -> installHandler
keyboardSignal
(Catch (do
endWin
installHandler keyboardSignal old Nothing
raiseSignal keyboardSignal))
Nothing
sigaction returns complete information about the old signal: handler,
mask and flags, thus allowing exact restoring of the previous
state. But Posix.installHandler returns only the old handler, and
does not take nor return any flags. The above is only an approximation.
Should it be fixed?
Why installHandler takes Maybe SignalSet instead of SignalSet?
Nothing is equivalent to emptySignalSet, it does not carry any
additional information.
--
__("< Marcin Kowalczyk * [EMAIL PROTECTED] http://qrczak.ids.net.pl/
\__/ GCS/M d- s+:-- a23 C+++$ UL++>++++$ P+++ L++>++++$ E-
^^ W++ N+++ o? K? w(---) O? M- V? PS-- PE++ Y? PGP+ t
QRCZAK 5? X- R tv-- b+>++ DI D- G+ e>++++ h! r--%>++ y-