summaryrefslogtreecommitdiff
path: root/services/surfaceflinger/MessageQueue.cpp
diff options
context:
space:
mode:
author Mathias Agopian <mathias@google.com> 2010-10-11 14:17:25 -0700
committer Android Git Automerger <android-git-automerger@android.com> 2010-10-11 14:17:25 -0700
commit2e109a8666b99825ca1d6c5373f16cf237c99f90 (patch)
treedc7f26d0f8f33d443cdcee23f61ef84b7f53d84c /services/surfaceflinger/MessageQueue.cpp
parent167af513b1672b6c55caba13c95e17bcb45efdf1 (diff)
parenteea35e1e86ac5f109beeba91af4135a9257a4044 (diff)
am d0528b74: Merge "deliver invalidate messages AFTER other messages" into gingerbread
Merge commit 'd0528b74b6de87c415ea498095e142d52c68875b' into gingerbread-plus-aosp * commit 'd0528b74b6de87c415ea498095e142d52c68875b': deliver invalidate messages AFTER other messages
Diffstat (limited to 'services/surfaceflinger/MessageQueue.cpp')
-rw-r--r--services/surfaceflinger/MessageQueue.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/services/surfaceflinger/MessageQueue.cpp b/services/surfaceflinger/MessageQueue.cpp
index 4fb1e6133b..aebe1b82d2 100644
--- a/services/surfaceflinger/MessageQueue.cpp
+++ b/services/surfaceflinger/MessageQueue.cpp
@@ -72,14 +72,6 @@ sp<MessageBase> MessageQueue::waitMessage(nsecs_t timeout)
nsecs_t now = systemTime();
nsecs_t nextEventTime = -1;
- // invalidate messages are always handled first
- if (mInvalidate) {
- mInvalidate = false;
- mInvalidateMessage->when = now;
- result = mInvalidateMessage;
- break;
- }
-
LIST::iterator cur(mMessages.begin());
if (cur != mMessages.end()) {
result = *cur;
@@ -95,6 +87,14 @@ sp<MessageBase> MessageQueue::waitMessage(nsecs_t timeout)
result = 0;
}
+ // see if we have an invalidate message
+ if (mInvalidate) {
+ mInvalidate = false;
+ mInvalidateMessage->when = now;
+ result = mInvalidateMessage;
+ break;
+ }
+
if (timeout >= 0) {
if (timeoutTime < now) {
// we timed-out, return a NULL message