summaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/thread.h
diff options
context:
space:
mode:
authorGravatar bunnei2015-06-17 18:07:15 -0400
committerGravatar bunnei2015-06-17 18:07:15 -0400
commit2e16edbc56c51265250269dd2d5e8b7b71335656 (patch)
tree7634b833a4c5a647a172f29cff281920ce0f07ed /src/core/hle/kernel/thread.h
parentMerge pull request #864 from linkmauve/gl-info (diff)
parentkernel: Fix svcWaitSynch to always acquire requested wait objects. (diff)
downloadyuzu-2e16edbc56c51265250269dd2d5e8b7b71335656.tar.gz
yuzu-2e16edbc56c51265250269dd2d5e8b7b71335656.tar.xz
yuzu-2e16edbc56c51265250269dd2d5e8b7b71335656.zip
Merge pull request #849 from bunnei/fix-waitsynch-2
Fix svcWaitSynch to correctly acquire wait objects
Diffstat (limited to 'src/core/hle/kernel/thread.h')
-rw-r--r--src/core/hle/kernel/thread.h14
1 files changed, 5 insertions, 9 deletions
diff --git a/src/core/hle/kernel/thread.h b/src/core/hle/kernel/thread.h
index 2c65419c3..b8160bb2c 100644
--- a/src/core/hle/kernel/thread.h
+++ b/src/core/hle/kernel/thread.h
@@ -96,12 +96,6 @@ public:
96 u32 GetThreadId() const { return thread_id; } 96 u32 GetThreadId() const { return thread_id; }
97 97
98 /** 98 /**
99 * Release an acquired wait object
100 * @param wait_object WaitObject to release
101 */
102 void ReleaseWaitObject(WaitObject* wait_object);
103
104 /**
105 * Resumes a thread from waiting 99 * Resumes a thread from waiting
106 */ 100 */
107 void ResumeFromWait(); 101 void ResumeFromWait();
@@ -152,6 +146,8 @@ public:
152 146
153 s32 tls_index; ///< Index of the Thread Local Storage of the thread 147 s32 tls_index; ///< Index of the Thread Local Storage of the thread
154 148
149 bool waitsynch_waited; ///< Set to true if the last svcWaitSynch call caused the thread to wait
150
155 /// Mutexes currently held by this thread, which will be released when it exits. 151 /// Mutexes currently held by this thread, which will be released when it exits.
156 boost::container::flat_set<SharedPtr<Mutex>> held_mutexes; 152 boost::container::flat_set<SharedPtr<Mutex>> held_mutexes;
157 153
@@ -163,12 +159,12 @@ public:
163 159
164 std::string name; 160 std::string name;
165 161
162 /// Handle used as userdata to reference this object when inserting into the CoreTiming queue.
163 Handle callback_handle;
164
166private: 165private:
167 Thread(); 166 Thread();
168 ~Thread() override; 167 ~Thread() override;
169
170 /// Handle used as userdata to reference this object when inserting into the CoreTiming queue.
171 Handle callback_handle;
172}; 168};
173 169
174/** 170/**