diff options
author | Ryan Prichard <rprichard@google.com> | 2019-04-18 22:47:04 -0700 |
---|---|---|
committer | Ryan Prichard <rprichard@google.com> | 2019-04-23 00:19:30 -0700 |
commit | ea722a077963cff958d2dcd58f9ff4075a69df24 (patch) | |
tree | 3144569590c0edda0e342c3955dd2c1e0fa37cd6 /libc/malloc_debug/malloc_debug.cpp | |
parent | 5bab966ca807b95ca8be32a71cc7cecc36b62106 (diff) |
PIMutexUnlock: load owner_tid in non-common case
For a recursive or errorcheck PI mutex, the old_owner variable wasn't
being initialized. As a result, unlocking a doubly-locked recursive
mutex owned by another thread decremented the mutex counter. Instead, the
unlock call should fail with EPERM.
Bug: http://b/130841532
Test: bionic-unit-tests
Test: bionic-unit-tests-glibc --gtest_filter='pthread.pthread_mutex_lock*'
Change-Id: I37adb094cb2ce8d51df7b4f48e8d6bc144436418
(cherry picked from commit 4b6c0f5dce5ad8d93e4e707977e09153a5399139)
Diffstat (limited to 'libc/malloc_debug/malloc_debug.cpp')
0 files changed, 0 insertions, 0 deletions