summaryrefslogtreecommitdiff
path: root/sal/osl/unx/signal.cxx
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2017-07-16 20:34:11 +0200
committerStephan Bergmann <sbergman@redhat.com>2017-07-16 20:34:11 +0200
commit8c8894ec0696fde6e997a17d5e0972f3a8fe2bb9 (patch)
tree6d680415ca111266028af8c82b4676103d5dfe24 /sal/osl/unx/signal.cxx
parent2c4c08320532d2edfbd53d1bb0c45e7448caf004 (diff)
Avoid crash when rSignal.Handler is SIG_DFL etc.
Change-Id: I20bccf4f6d52986334725cf72909730fcfc5109b
Diffstat (limited to 'sal/osl/unx/signal.cxx')
-rw-r--r--sal/osl/unx/signal.cxx17
1 files changed, 1 insertions, 16 deletions
diff --git a/sal/osl/unx/signal.cxx b/sal/osl/unx/signal.cxx
index c989f4b21361..9a528fec327a 100644
--- a/sal/osl/unx/signal.cxx
+++ b/sal/osl/unx/signal.cxx
@@ -476,22 +476,7 @@ void signalHandlerFunction(int signal, siginfo_t * info, void * context)
Info.Signal == osl_Signal_IntegerDivideByZero ||
Info.Signal == osl_Signal_FloatDivideByZero) && !is_unset_signal(signal))
{
- for (SignalAction & rSignal : Signals)
- {
- if (rSignal.Signal == signal)
- {
- if (rSignal.siginfo)
- {
- (*reinterpret_cast<Handler2>(rSignal.Handler))(
- signal, info, context);
- }
- else
- {
- rSignal.Handler(signal);
- }
- break;
- }
- }
+ callSystemHandler(signal, info, context);
}
#endif