diff options
author | Eric Laurent <elaurent@google.com> | 2014-01-27 17:19:48 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2014-01-27 17:19:48 +0000 |
commit | 4ef1dc2d5b5f5df93b173b0b4c4719d4484e031d (patch) | |
tree | 3f9e4f1d3664df715787a327dbcf8d4ad2cb48b0 | |
parent | d0e7e8012e19ac750e7858756247be1036da32c4 (diff) | |
parent | 5163c2ef5fe11c9b10d230691ef429035da4c788 (diff) | |
download | frameworks_av-4ef1dc2d5b5f5df93b173b0b4c4719d4484e031d.zip frameworks_av-4ef1dc2d5b5f5df93b173b0b4c4719d4484e031d.tar.gz frameworks_av-4ef1dc2d5b5f5df93b173b0b4c4719d4484e031d.tar.bz2 |
Merge "Only increase the counter when we do take a wakelock"
-rw-r--r-- | media/libstagefright/TimedEventQueue.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/media/libstagefright/TimedEventQueue.cpp b/media/libstagefright/TimedEventQueue.cpp index dedd186..0afac69 100644 --- a/media/libstagefright/TimedEventQueue.cpp +++ b/media/libstagefright/TimedEventQueue.cpp @@ -318,7 +318,7 @@ sp<TimedEventQueue::Event> TimedEventQueue::removeEventFromQueue_l( void TimedEventQueue::acquireWakeLock_l() { - if (mWakeLockCount++ == 0) { + if (mWakeLockCount == 0) { CHECK(mWakeLockToken == 0); if (mPowerManager == 0) { // use checkService() to avoid blocking if power service is not up yet @@ -341,21 +341,23 @@ void TimedEventQueue::acquireWakeLock_l() IPCThreadState::self()->restoreCallingIdentity(token); if (status == NO_ERROR) { mWakeLockToken = binder; + mWakeLockCount++; } } + } else { + mWakeLockCount++; } } void TimedEventQueue::releaseWakeLock_l(bool force) { + if (mWakeLockCount == 0) { + return; + } if (force) { - if (mWakeLockCount == 0) { - return; - } // Force wakelock release below by setting reference count to 1. mWakeLockCount = 1; } - CHECK(mWakeLockCount != 0); if (--mWakeLockCount == 0) { CHECK(mWakeLockToken != 0); if (mPowerManager != 0) { |