ULTIMA8: Adjust proc loop detection workaround again
The previous workaround value chosen to fix U8 bug #12913 really locked up Crusader too long (>10 s), so there's no clean solution here that works for both games it seems. Revert the threshold back for Crusader games only, and keep the high threshold for U8. I hope the next time I touch this line is to remove it because I work out the root cause of the problem :|
This commit is contained in:
parent
4d37530ed2
commit
2e135b284e
1 changed files with 2 additions and 1 deletions
|
@ -178,7 +178,8 @@ void Kernel::runProcesses() {
|
||||||
// for a really long time at this point. Set it high enough that
|
// for a really long time at this point. Set it high enough that
|
||||||
// a process going through all map items should still terminate.
|
// a process going through all map items should still terminate.
|
||||||
//
|
//
|
||||||
if (num_run > 65536 && !p->is_terminated()) {
|
if (((num_run > 8192 && GAME_IS_CRUSADER) || num_run > 65534)
|
||||||
|
&& !p->is_terminated()) {
|
||||||
warning("Seem to be stuck in process loop - killing current process");
|
warning("Seem to be stuck in process loop - killing current process");
|
||||||
p->fail();
|
p->fail();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue