diff --git a/rtl/linux/osmain.inc b/rtl/linux/osmain.inc index 286f068f31..28c0e99413 100644 --- a/rtl/linux/osmain.inc +++ b/rtl/linux/osmain.inc @@ -491,7 +491,7 @@ begin { all flags and information set to zero } FillChar(act, sizeof(SigActionRec),0); { initialize handler } - act.sa_handler := @SignalToRunError; + act.sa_handler := SigActionHandler(@SignalToRunError); act.sa_flags:=SA_SIGINFO {$ifdef cpux86_64} or $4000000 @@ -563,7 +563,10 @@ end; { $Log$ - Revision 1.25 2005-02-03 21:42:17 peter + Revision 1.26 2005-02-05 22:53:43 peter + * use typecasted sigactionhandler, needed for arm + + Revision 1.25 2005/02/03 21:42:17 peter * readded magic value $4000000 for sa_flags for x86_64 Revision 1.24 2005/01/31 20:13:24 peter diff --git a/rtl/linux/signal.inc b/rtl/linux/signal.inc index 5f77cf33aa..f367bbef0a 100644 --- a/rtl/linux/signal.inc +++ b/rtl/linux/signal.inc @@ -123,14 +123,14 @@ Const const SI_PAD_SIZE = ((128 div sizeof(longint)) - 3); - + type SigSet = array[0..wordsinsigset-1] of cint; sigset_t= SigSet; PSigSet = ^SigSet; psigset_t=psigset; TSigSet = SigSet; - + psiginfo = ^tsiginfo; tsiginfo = record si_signo : longint; @@ -172,16 +172,12 @@ type { CPU dependent TSigContext } {$i sighndh.inc} -type +type SignalHandler = Procedure(Sig : Longint);cdecl; PSignalHandler = ^SignalHandler; SignalRestorer = Procedure;cdecl; PSignalRestorer = ^SignalRestorer; -{$ifdef CPUARM} - SigActionHandler = procedure(Sig: longint; _a2,_a3,_a4 : dword; SigContext: PSigInfo; uContext : PuContext); cdecl; -{$else} SigActionHandler = procedure(sig : longint; SigInfo: PSigInfo; SigContext: PSigContext);cdecl; -{$endif} {$ifdef CPUARM} {$define NEWSIGNAL} @@ -208,7 +204,10 @@ type { $Log$ - Revision 1.24 2005-02-05 22:45:54 peter + Revision 1.25 2005-02-05 22:53:43 peter + * use typecasted sigactionhandler, needed for arm + + Revision 1.24 2005/02/05 22:45:54 peter * sigactionhandler fixed for arm Revision 1.23 2005/01/30 18:01:15 peter