am 2c9f86aa: am 53af1cd3: Merge "Vsyncs are hard" into lmp-mr1-dev

* commit '2c9f86aa21b8d7ea6a77eaca9a49ccdb31245129':
  Vsyncs are hard
diff --git a/libs/hwui/renderthread/RenderThread.cpp b/libs/hwui/renderthread/RenderThread.cpp
index 3e4e965..84826b7 100644
--- a/libs/hwui/renderthread/RenderThread.cpp
+++ b/libs/hwui/renderthread/RenderThread.cpp
@@ -284,6 +284,14 @@
             mPendingRegistrationFrameCallbacks.clear();
             requestVsync();
         }
+
+        if (!mFrameCallbackTaskPending && !mVsyncRequested && mFrameCallbacks.size()) {
+            // TODO: Clean this up. This is working around an issue where a combination
+            // of bad timing and slow drawing can result in dropping a stale vsync
+            // on the floor (correct!) but fails to schedule to listen for the
+            // next vsync (oops), so none of the callbacks are run.
+            requestVsync();
+        }
     }
 
     return false;