Fix the frame sync issue in COMBINED_UPDATE_RENDER mode
There could be a small gap between the start time of the current frame and the
sleep-until time calculated in the previous frame. In addition, the update or
rendering in the current frame could take too much time so that the calculated
sleep-until time has already passed. In order to make the frames keep syncing
to the default frame duration (i.e. 16 ms) in these cases, we should keep tracking
any extra time taken by the current frame and shorten the duration of the next frame
accordingly.
Change-Id: Ic3dcbfbc5b8aded6514310ee17843839daf12f03