diff options
| author | 2013-11-04 21:55:09 -0800 | |
|---|---|---|
| committer | 2013-11-04 21:55:09 -0800 | |
| commit | 39c5ea2caaddd7ea44eaeed38d3760fbc421ad56 (patch) | |
| tree | cc1da261ebde44d7c3b038b464c1c5f67f77ded3 | |
| parent | 18f94b1e6c489f0d68c694a197aae898c68124bb (diff) | |
| parent | ee874caa81ad48d6d0ee34509d3050ca9c046676 (diff) | |
am ee874caa: Merge "DispSync: remove delay when enabling vsync events" into klp-dev
* commit 'ee874caa81ad48d6d0ee34509d3050ca9c046676':
DispSync: remove delay when enabling vsync events
| -rw-r--r-- | services/surfaceflinger/DispSync.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/services/surfaceflinger/DispSync.cpp b/services/surfaceflinger/DispSync.cpp index 167c6f04be..ce07ab56c1 100644 --- a/services/surfaceflinger/DispSync.cpp +++ b/services/surfaceflinger/DispSync.cpp @@ -164,7 +164,14 @@ public: EventListener listener; listener.mPhase = phase; listener.mCallback = callback; - listener.mLastEventTime = systemTime(SYSTEM_TIME_MONOTONIC); + + // We want to allow the firstmost future event to fire without + // allowing any past events to fire. Because + // computeListenerNextEventTimeLocked filters out events within a half + // a period of the last event time, we need to initialize the last + // event time to a half a period in the past. + listener.mLastEventTime = systemTime(SYSTEM_TIME_MONOTONIC) - mPeriod / 2; + mEventListeners.push(listener); mCond.signal(); |