mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-06 14:00:16 +02:00
FEXCore: Moves XID check to the frontend
The XID signal handler is OS specific and needs to be delegated to being handled in the frontend. This only happens when we create a thread with pthread rather than clone/fork/vfork. The first created pthread will reset the XID signal handler in glibc, which we need to check the first time this occurs. A little bit disjoint while the actual thread creation still happens in the backend but will come together once the thread creation gets moved to the frontend. The only game I am aware of that requires this to work is SOMA since its one of its middleware libraries tries asking for root privileges. Retested the game to make sure it still works as expected.
This commit is contained in:
1 parent
7de66ac3a4
commit
afebf73e8f
7 files changed
+22
-23
No files matched your search
@@ -25,8 +25,6 @@ class DummySyscallHandler: public FEXCore::HLE::SyscallHandler, public FEXCore::
|
||||
|
||||
class DummySignalDelegator final : public FEXCore::SignalDelegator, public FEXCore::Allocator::FEXAllocOperators {
|
||||
public:
|
||||
void CheckXIDHandler() override {}
|
||||
|
||||
void SignalThread(FEXCore::Core::InternalThreadState *Thread, FEXCore::Core::SignalEvent Event) override {}
|
||||
|
||||
FEXCore::Core::InternalThreadState *GetBackingTLSThread() {
|
||||
|
||||
Reference in new issue
Block a user