mirror of
https://github.com/Atmosphere-NX/Atmosphere.git
synced 2025-07-05 09:02:15 +02:00
corrected panics because not implemented
This commit is contained in:
parent
cbabb80ef4
commit
385d92fecb
@ -39,7 +39,7 @@ void WaitableManager::process_internal(bool break_on_timeout) {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if(this->waitables.size() > 0x40) {
|
if(this->waitables.size() > 0x40) {
|
||||||
panic("PANIC: Too many waitables in waitablemanager");
|
/* TODO: panic. Too many waitables */
|
||||||
}
|
}
|
||||||
rc = svcWaitSynchronization(&handle_index, handles.data(), this->waitables.size(), this->timeout);
|
rc = svcWaitSynchronization(&handle_index, handles.data(), this->waitables.size(), this->timeout);
|
||||||
if (R_SUCCEEDED(rc)) {
|
if (R_SUCCEEDED(rc)) {
|
||||||
@ -58,22 +58,18 @@ void WaitableManager::process_internal(bool break_on_timeout) {
|
|||||||
} else if (rc == 0xE401) {
|
} else if (rc == 0xE401) {
|
||||||
/* Invalid handle */
|
/* Invalid handle */
|
||||||
/* handle_index does not get updated when this happens
|
/* handle_index does not get updated when this happens
|
||||||
so we can't really do anything */
|
so we don't know which waitable is the problem.
|
||||||
panic("PANIC: Invalid handle in waitablemanager");
|
However switchbrew says that svcWaitSynchronization
|
||||||
|
|
||||||
/* however switchbrew says that svcWaitSynchronization
|
|
||||||
does not accept 0xFFFF8001 or 0xFFFF8000 as handles
|
does not accept 0xFFFF8001 or 0xFFFF8000 as handles
|
||||||
so we could at least remove them if any exists
|
so we could at least remove them if any exists */
|
||||||
|
|
||||||
for(auto it = waitables.begin(); it != waitables.end(); it++) {
|
for(auto it = waitables.begin(); it != waitables.end(); it++) {
|
||||||
if(*it->get_handle() == 0xFFFF8000 || *it->get_handle() == 0xFFFF8001) {
|
if(*it->get_handle() == 0xFFFF8000 || *it->get_handle() == 0xFFFF8001) {
|
||||||
waitables.erase(it);
|
waitables.erase(it);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
} else if (rc != 0xF601) {
|
} else if (rc != 0xF601) {
|
||||||
/* TODO: When can this happen? */
|
/* TODO: panic. When can this happen? */
|
||||||
panic("PANIC: unhandled result code in waitablemanager");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (rc == 0xF601) {
|
if (rc == 0xF601) {
|
||||||
|
Loading…
Reference in New Issue
Block a user