| 72 | } |
| 73 | |
| 74 | void ObjectLock::Unlock() |
| 75 | { |
| 76 | #ifdef I2_DEBUG |
| 77 | if (m_Locked && !--m_Object->m_LockCount) { |
| 78 | m_Object->m_LockOwner.store(decltype(m_Object->m_LockOwner.load())()); |
| 79 | } |
| 80 | #endif /* I2_DEBUG */ |
| 81 | |
| 82 | if (m_Locked) { |
| 83 | m_Object->m_Mutex.unlock(); |
| 84 | m_Locked = false; |
| 85 | } |
| 86 | } |
| 87 | |
| 88 | /** |
| 89 | * Returns true if the object is locked, false otherwise. |
no test coverage detected