mirror of https://github.com/zeldaret/botw.git
ksys/util: Add Task functions that were missed because of IDA's bad tail detection
This commit is contained in:
parent
cdf27ca63c
commit
b2ce4e32ea
|
@ -90530,6 +90530,8 @@
|
|||
0x00000071011f7d14,EventPlusString::setMainInvoker,36,_ZN4ksys4util4Task11setDelegateERKNS0_18TaskDelegateSetterE
|
||||
0x00000071011f7d38,EventPlusString::submitRequest,544,_ZN4ksys4util4Task13submitRequestERNS0_11TaskRequestE?
|
||||
0x00000071011f7f58,EventPlusString::u,124,_ZNK4ksys4util4Task16canSubmitRequestEv
|
||||
0x00000071011f7fd4,_ZN4ksys4util4Task11setUserDataEPv,8,_ZN4ksys4util4Task11setUserDataEPv
|
||||
0x00000071011f7fdc,_ZN4ksys4util4Task20setDelegateInternal_EPN4sead13AnyDelegate1RIPvbEE,0x58,_ZN4ksys4util4Task20setDelegateInternal_EPN4sead13AnyDelegate1RIPvbEE
|
||||
0x00000071011f8034,EventPlusString::v,360,_ZN4ksys4util4Task30processOnCurrentThreadDirectlyEPNS0_10TaskThreadE
|
||||
0x00000071011f819c,EventPlusString::p,28,_ZN4ksys4util4Task15removeFromQueueEv
|
||||
0x00000071011f81b8,sub_71011F81B8,28,_ZN4ksys4util4Task16removeFromQueue2Ev
|
||||
|
|
Can't render this file because it is too large.
|
|
@ -84,11 +84,8 @@ bool Task::submitRequest(TaskRequest& request) {
|
|||
request.mQueue = mQueue;
|
||||
}
|
||||
mUserData = request.mUserData;
|
||||
if (auto* delegate = request.mDelegate) {
|
||||
deleteDelegate_();
|
||||
mFlags.set(Flag::DoNotDeleteDelegate);
|
||||
mDelegate = delegate;
|
||||
}
|
||||
if (request.mDelegate)
|
||||
setDelegateInternal_(request.mDelegate);
|
||||
mRemoveCallback = request.mRemoveCallback;
|
||||
mPostRunCallback = request.mPostRunCallback;
|
||||
mName = request.mName;
|
||||
|
@ -126,6 +123,17 @@ bool Task::canSubmitRequest() const {
|
|||
return run_finished_on_current_thread || cond2;
|
||||
}
|
||||
|
||||
void Task::setUserData(void* user_data) {
|
||||
mUserData = user_data;
|
||||
}
|
||||
|
||||
bool Task::setDelegateInternal_(TaskDelegate* delegate) {
|
||||
deleteDelegate_();
|
||||
mFlags.set(Flag::DoNotDeleteDelegate);
|
||||
mDelegate = delegate;
|
||||
return delegate != nullptr;
|
||||
}
|
||||
|
||||
void Task::processOnCurrentThreadDirectly(TaskThread* thread) {
|
||||
{
|
||||
TaskQueueLock lock{thread};
|
||||
|
|
|
@ -150,7 +150,9 @@ protected:
|
|||
virtual void preRemove_() {}
|
||||
virtual void postRemove_() {}
|
||||
|
||||
bool setDelegateInternal_(TaskDelegate* delegate);
|
||||
void setLaneId(u8 id);
|
||||
void setUserData(void* user_data);
|
||||
void setThread(TaskThread* thread);
|
||||
void setStatusPushed();
|
||||
void setStatusFetched();
|
||||
|
|
Loading…
Reference in New Issue