Skip to content
Commit fb8ccaa1 authored by Robert Carr's avatar Robert Carr
Browse files

BLASTBufferQueue: Fix two conditions leading to freeze.

If we ask the BLASTBufferQueue to redirect a buffer in to a transaction
but then lose the buffer the app will of course eventually ANR as it
is stuck on EGLSwapBuffers. Here we fix two cases where this could have
happened:
	1. Currently if we are blast syncing and report draw is true
	we send the buffer to the WM. This is from an earlier version of
	the code and is not correct. The WM now explicitly notifies us
	if it wants to receive the buffer, and so we avoid sending it if
	it hasn't asked.
	2. We should pause the renderer in addition to fencing it
	otherwise a render thread animation frame could sneak in. We are
	right on the verge of kicking off a new frame so this shouldn't
	have much impact besides ensuring overlapping frames don't
	confuse our transaction logic.

Bug: 155300507
Test: Existing tests pass.
Change-Id: I816d806da6c09ae12734de8909c0e61af433f93f
parent a6099ac7
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment