Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b62adaaf authored by Chavi Weingarten's avatar Chavi Weingarten Committed by Vishnu Nair
Browse files

Drop the buffer from the cache if the buffer is dropped from the transaction

This can happen with the scenario below 1. App sets buffer1 into a
Transaction but doesn't apply it. 2. The Transaction is sent to another
process (system server in this case) 3. The buffer is then cached
locally in the process in writeToParcel 4. App sets buffer2 into a new
Transaction but doesn't apply it. 5. Transaction2 is sent to the other
process (system server) 6. Transaction1 and Transaction2 are merged
causing the buffer in Transaction2 to overwrite the buffer in
Transaction1.

This causes the buffer to never get sent to SF and then never placed in
the SF cache, but the client still thinks this buffer is cached and will
continue to just send cacheId but no buffer when this buffer is reused.
This can result in dropped frames since SF will not be able to find the
buffer when trying to draw it

Bug: 385976595
Test: atest ReleaseBufferCallbackTest#CacheBufferOverwriteTransaction
Flag: EXEMPT bug fix
Change-Id: Iffc316f9ffd00579cba3068e7bb0ffa52b805763
parent 0d77e992
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment