diff --git a/rtl/haiku/signal.inc b/rtl/haiku/signal.inc index 5e6aa2999d..5526e6d504 100644 --- a/rtl/haiku/signal.inc +++ b/rtl/haiku/signal.inc @@ -283,8 +283,16 @@ type SignalRestorer = Procedure;cdecl; PSignalRestorer = ^SignalRestorer; {$WARNING TODO : check with signal.h} + { Note: As of R1alpha3, sa_handler still was of SignalHandler type, with one one parameter, + but the Signal stack has a second parameter that is set to zero + and a third that is of type pvregs } sigActionHandler = procedure(Sig: Longint; SigContext: PSigContextRec; uContext : Pvregs);cdecl; + { Add those type definition to obtain same declaration as for other unix targets + but do not forget the PSigInfo filed is currently nil for Haiku as of R1alpha3 } + PSigInfo = PSigContextRec; + PSigContext = Pvregs; + Sigset=sigset_t; TSigset=sigset_t; PSigSet = ^SigSet;