libposix: fix disposition for signals that are ignored by default
This commit is contained in:
parent
a64a7b0d0e
commit
28c426055d
|
@ -134,7 +134,7 @@ static PosixSignalTrampoline __libposix_signal_trampoline;
|
||||||
|
|
||||||
typedef enum PosixSignalDisposition
|
typedef enum PosixSignalDisposition
|
||||||
{
|
{
|
||||||
SignalHandled = 0, /* the application handled the signal */
|
IgnoreWithNoEffect = 0,
|
||||||
TerminateTheProcess,
|
TerminateTheProcess,
|
||||||
TerminateTheProcessAndCoreDump,
|
TerminateTheProcessAndCoreDump,
|
||||||
StopTheProcess,
|
StopTheProcess,
|
||||||
|
@ -194,7 +194,8 @@ execute_disposition(int sig, PosixSignalDisposition action)
|
||||||
|
|
||||||
switch(action){
|
switch(action){
|
||||||
case ResumeTheProcess: // the sender resumed us already
|
case ResumeTheProcess: // the sender resumed us already
|
||||||
case SignalHandled:
|
case IgnoreWithNoEffect:
|
||||||
|
*__restart_syscall = 1;
|
||||||
return 1;
|
return 1;
|
||||||
case TerminateTheProcess:
|
case TerminateTheProcess:
|
||||||
terminated_by_signal(sig);
|
terminated_by_signal(sig);
|
||||||
|
@ -255,7 +256,7 @@ default_signal_disposition(int code)
|
||||||
case PosixSIGCHLD:
|
case PosixSIGCHLD:
|
||||||
case PosixSIGCLD:
|
case PosixSIGCLD:
|
||||||
case PosixSIGURG:
|
case PosixSIGURG:
|
||||||
return SignalHandled;
|
return IgnoreWithNoEffect;
|
||||||
case PosixSIGCONT:
|
case PosixSIGCONT:
|
||||||
return ResumeTheProcess;
|
return ResumeTheProcess;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue