Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 89e55179 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Cert: Add a variable to track if we have already been interrupted" am:...

Merge "Cert: Add a variable to track if we have already been interrupted" am: 5c81f6ac am: 5b3a3af7

Original change: https://android-review.googlesource.com/c/platform/system/bt/+/1837939

Change-Id: Ieaead2c35f7f5c9f203dab993c60430b43cd895a
parents 34e5aeda 5b3a3af7
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -51,10 +51,16 @@ extern "C" const char* __asan_default_options() {
namespace {
::bluetooth::facade::GrpcRootServer grpc_root_server;

bool interrupted = false;
struct sigaction old_act = {};
void interrupt_handler(int signal_number) {
  if (!interrupted) {
    interrupted = true;
    LOG_INFO("Stopping gRPC root server due to signal: %s[%d]", strsignal(signal_number), signal_number);
    grpc_root_server.StopServer();
  } else {
    LOG_WARN("Already interrupted by signal: %s[%d]", strsignal(signal_number), signal_number);
  }
  if (old_act.sa_handler != nullptr && old_act.sa_handler != SIG_IGN && old_act.sa_handler != SIG_DFL) {
    LOG_INFO("Calling saved signal handler");
    old_act.sa_handler(signal_number);