summaryrefslogtreecommitdiff
path: root/services/surfaceflinger/MessageQueue.cpp
diff options
context:
space:
mode:
author Mathias Agopian <mathias@google.com> 2010-10-12 13:56:58 -0700
committer Android Git Automerger <android-git-automerger@android.com> 2010-10-12 13:56:58 -0700
commit4fc01e9aaebb11a6bb69a3605e018db2f4ec8c44 (patch)
treea1fb646ad0f39d9e0163f5285e8e892ab7180374 /services/surfaceflinger/MessageQueue.cpp
parent21317d1ddaa7c7204dfea9b38f87c6991f4a41af (diff)
parent3754d0ccc7ba07fd867d3d28e6493e84ce0a139d (diff)
am 3754d0cc: am d0528b74: Merge "deliver invalidate messages AFTER other messages" into gingerbread
Merge commit '3754d0ccc7ba07fd867d3d28e6493e84ce0a139d' * commit '3754d0ccc7ba07fd867d3d28e6493e84ce0a139d': 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 4fb1e6133b1c..aebe1b82d2b2 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