signal_chain.h 527 B

12345678910111213141516171819
  1. // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #pragma once
  4. #ifndef _WIN32
  5. #include <signal.h>
  6. namespace Common {
  7. // Android's ART overrides sigaction with its own wrapper. This is problematic for SIGSEGV
  8. // in particular, because ART's handler accesses tpidr_el0, which conflicts with NCE.
  9. // This extracts the libc symbol and calls it directly.
  10. int SigAction(int signum, const struct sigaction* act, struct sigaction* oldact);
  11. } // namespace Common
  12. #endif