MCPcopy Create free account
hub / github.com/danoon2/Boxedwine / seg_access

Method seg_access

source/kernel/kthread.cpp:1270–1284  ·  view source on GitHub ↗

motorhead demo installer, tomb raider 3 demo will trigger this

Source from the content-addressed store, hash-verified

1268
1269// motorhead demo installer, tomb raider 3 demo will trigger this
1270void KThread::seg_access(U32 address, bool readFault, bool writeFault, bool throwException) {
1271 if (this->process->sigActions[K_SIGSEGV].handlerAndSigAction!=K_SIG_IGN && this->process->sigActions[K_SIGSEGV].handlerAndSigAction!=K_SIG_DFL) {
1272
1273 this->process->sigActions[K_SIGSEGV].sigInfo[0] = K_SIGSEGV;
1274 this->process->sigActions[K_SIGSEGV].sigInfo[1] = 0;
1275 this->process->sigActions[K_SIGSEGV].sigInfo[2] = 2; // SEGV_ACCERR
1276 this->process->sigActions[K_SIGSEGV].sigInfo[3] = address;
1277 this->runSignal(K_SIGSEGV, EXCEPTION_PAGE_FAULT, 1 | (writeFault?2:0));
1278 if (throwException) {
1279 throw 1;
1280 }
1281 } else {
1282 this->memory->logPageFault(this, address);
1283 }
1284}
1285
1286void KThread::clone(KThread* from) {
1287 this->sigMask = from->sigMask;

Callers 9

writebMethod · 0.80
writewMethod · 0.80
writedMethod · 0.80
readbMethod · 0.80
writebMethod · 0.80
readwMethod · 0.80
writewMethod · 0.80
readdMethod · 0.80
writedMethod · 0.80

Calls 2

runSignalMethod · 0.95
logPageFaultMethod · 0.80

Tested by

no test coverage detected