summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMathias Agopian <mathias@google.com>2010-10-11 14:15:04 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2010-10-11 14:15:04 -0700
commiteea35e1e86ac5f109beeba91af4135a9257a4044 (patch)
treef79fea8a4592d418e233dbb5c43db6975b78431b
parent09ed308945358e97dcb0caa307c3e9566b4b1bf1 (diff)
parent7b0ba1668872eb6336bd305f9893991c84a08462 (diff)
downloadframeworks_native-eea35e1e86ac5f109beeba91af4135a9257a4044.zip
frameworks_native-eea35e1e86ac5f109beeba91af4135a9257a4044.tar.gz
frameworks_native-eea35e1e86ac5f109beeba91af4135a9257a4044.tar.bz2
Merge "deliver invalidate messages AFTER other messages" into gingerbread
-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 4fb1e61..aebe1b8 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