Locking a NULL pointer using ScopedLock is a noop.
This commit is contained in:
parent
bb284d9421
commit
fd6098a3a2
|
@ -61,12 +61,14 @@ public:
|
||||||
ScopedLock(kthread_mutex_t* mutex)
|
ScopedLock(kthread_mutex_t* mutex)
|
||||||
{
|
{
|
||||||
this->mutex = mutex;
|
this->mutex = mutex;
|
||||||
kthread_mutex_lock(mutex);
|
if ( mutex )
|
||||||
|
kthread_mutex_lock(mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
~ScopedLock()
|
~ScopedLock()
|
||||||
{
|
{
|
||||||
kthread_mutex_unlock(mutex);
|
if ( mutex )
|
||||||
|
kthread_mutex_unlock(mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@ -80,12 +82,12 @@ public:
|
||||||
ScopedLockSignal(kthread_mutex_t* mutex)
|
ScopedLockSignal(kthread_mutex_t* mutex)
|
||||||
{
|
{
|
||||||
this->mutex = mutex;
|
this->mutex = mutex;
|
||||||
this->acquired = kthread_mutex_lock_signal(mutex);
|
this->acquired = !mutex || kthread_mutex_lock_signal(mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
~ScopedLockSignal()
|
~ScopedLockSignal()
|
||||||
{
|
{
|
||||||
if ( acquired )
|
if ( mutex && acquired )
|
||||||
kthread_mutex_unlock(mutex);
|
kthread_mutex_unlock(mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue