| Index: runtime/bin/process_linux.cc
|
| diff --git a/runtime/bin/process_linux.cc b/runtime/bin/process_linux.cc
|
| index 7479064013cf16f2e203bc36149b248d2ae52561..175e36d858ee09633a8dea059494060020411b9f 100644
|
| --- a/runtime/bin/process_linux.cc
|
| +++ b/runtime/bin/process_linux.cc
|
| @@ -695,6 +695,10 @@ intptr_t Process::SetSignalHandler(intptr_t signal) {
|
| struct sigaction act;
|
| bzero(&act, sizeof(act));
|
| act.sa_handler = SignalHandler;
|
| + sigemptyset(&act.sa_mask);
|
| + for (int i = 0; i < kSignalsCount; i++) {
|
| + sigaddset(&act.sa_mask, kSignals[i]);
|
| + }
|
| int status = TEMP_FAILURE_RETRY_BLOCK_SIGNALS(
|
| sigaction(signal, &act, NULL));
|
| if (status < 0) {
|
|
|