Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(97)

Issue 2736753006: exo: Cleanup and make buffer release code more robust. (Closed)

Created:
3 years, 9 months ago by Fady Samuel
Modified:
3 years, 9 months ago
Reviewers:
CC:
chromium-reviews
Target Ref:
refs/pending/branch-heads/2987
Project:
chromium
Visibility:
Public.

Description

exo: Cleanup and make buffer release code more robust. Since the introduction of CompositorFrameSinkHolder it's possible for release callbacks to be lost. This is because we rely on the use count to drop to 0 but we're only guaranteed to get a callback for the last frame as we only keep one CompositorFrameSinkHolder reference. This removes the use count in favor of a simple cancelable callback. The use count was never necessary as attaching the buffer to multiple surfaces is a client behavior that results in undefined release callback behavior. Running the callback when the last attachment is released is not worse then sending it when all attachments have been released. BUG=659601 TEST=exo_unittests --gtest_filter=BufferTest.* Review-Url: https://codereview.chromium.org/2666233002 Cr-Commit-Position: refs/heads/master@{#447593} (cherry picked from commit 2cd69789c0cc1bf7b35f6c5673ba1db6f2273cf0) Review-Url: https://codereview.chromium.org/2736753006 . Cr-Commit-Position: refs/branch-heads/2987@{#793} Cr-Branched-From: ad51088c0e8776e8dcd963dbe752c4035ba6dab6-refs/heads/master@{#444943} Committed: https://chromium.googlesource.com/chromium/src/+/05b55a8cd99bb90122b92194f01b15cc849f8860

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+54 lines, -58 lines) Patch
M components/exo/buffer.h View 5 chunks +13 lines, -11 lines 0 comments Download
M components/exo/buffer.cc View 6 chunks +41 lines, -47 lines 0 comments Download

Messages

Total messages: 2 (1 generated)
Fady Samuel
3 years, 9 months ago (2017-03-08 00:40:55 UTC) #2
Message was sent while issue was closed.
Committed patchset #1 (id:1) manually as
05b55a8cd99bb90122b92194f01b15cc849f8860.

Powered by Google App Engine
This is Rietveld 408576698