fix scheduler bug
where the particular combination of events seems not to have been possible until the extra delim-cont for try-atomic hook was added
This commit is contained in:
parent
7eb3e8c28a
commit
dbd8faee1b
|
@ -644,8 +644,11 @@ int scheme_wait_semas_chs(int n, Scheme_Object **o, int just_try, Syncing *synci
|
||||||
if (semas[i]->value) {
|
if (semas[i]->value) {
|
||||||
if ((semas[i]->value > 0) && (!syncing || !syncing->reposts || !syncing->reposts[i]))
|
if ((semas[i]->value > 0) && (!syncing || !syncing->reposts || !syncing->reposts[i]))
|
||||||
--semas[i]->value;
|
--semas[i]->value;
|
||||||
if (syncing && syncing->accepts && syncing->accepts[i])
|
if (syncing) {
|
||||||
scheme_accept_sync(syncing, i);
|
syncing->result = i + 1;
|
||||||
|
if (syncing->accepts && syncing->accepts[i])
|
||||||
|
scheme_accept_sync(syncing, i);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} else if (semas[i]->so.type == scheme_never_evt_type) {
|
} else if (semas[i]->so.type == scheme_never_evt_type) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user