ubuntu-webapps-bugs team mailing list archive
-
ubuntu-webapps-bugs team
-
Mailing list archive
-
Message #02022
[Bug 1402382] [NEW] Possible leak due to thread safety issue
Public bug reported:
CompositorFrameHandle isn't thread-safe and is intended to be used on
the UI thread (although it's also used on the QML render thread when the
UI thread is paused). As a consequence it doesn't use a thread-safe
reference count.
When calling Compositor::DidSwapCompositorFrame(), we check that the
returned CompositorFrameHandles don't have a reference outside of the
compositor, before handing them off to the compositor thread where they
are deleted. However, even when there are no references held outside of
the compositor, there is a race when the UI and compositor threads
release their reference that means we may leak the object.
This is fixed on trunk by http://bazaar.launchpad.net/~oxide-
developers/oxide/oxide.trunk/revision/892
** Affects: oxide
Importance: High
Assignee: Chris Coulson (chrisccoulson)
Status: Fix Released
** Affects: oxide/1.3
Importance: High
Assignee: Chris Coulson (chrisccoulson)
Status: Triaged
** Affects: oxide/1.4
Importance: High
Assignee: Chris Coulson (chrisccoulson)
Status: Triaged
** Changed in: oxide
Importance: Undecided => High
** Changed in: oxide
Status: New => Fix Released
** Also affects: oxide/1.4
Importance: Undecided
Status: New
** Changed in: oxide/1.4
Status: New => Triaged
** Changed in: oxide/1.4
Importance: Undecided => High
** Changed in: oxide
Assignee: (unassigned) => Chris Coulson (chrisccoulson)
** Changed in: oxide
Milestone: None => branch-1.5
** Also affects: oxide/1.3
Importance: Undecided
Status: New
** Changed in: oxide/1.3
Importance: Undecided => High
** Changed in: oxide/1.3
Status: New => Triaged
** Changed in: oxide/1.3
Assignee: (unassigned) => Chris Coulson (chrisccoulson)
** Changed in: oxide/1.4
Assignee: (unassigned) => Chris Coulson (chrisccoulson)
** Changed in: oxide/1.3
Milestone: None => 1.3.6
** Changed in: oxide/1.4
Milestone: None => 1.4.0
--
You received this bug notification because you are a member of Ubuntu
WebApps bug tracking, which is subscribed to Oxide.
https://bugs.launchpad.net/bugs/1402382
Title:
Possible leak due to thread safety issue
Status in Oxide Webview:
Fix Released
Status in Oxide 1.3 series:
Triaged
Status in Oxide 1.4 series:
Triaged
Bug description:
CompositorFrameHandle isn't thread-safe and is intended to be used on
the UI thread (although it's also used on the QML render thread when
the UI thread is paused). As a consequence it doesn't use a thread-
safe reference count.
When calling Compositor::DidSwapCompositorFrame(), we check that the
returned CompositorFrameHandles don't have a reference outside of the
compositor, before handing them off to the compositor thread where
they are deleted. However, even when there are no references held
outside of the compositor, there is a race when the UI and compositor
threads release their reference that means we may leak the object.
This is fixed on trunk by http://bazaar.launchpad.net/~oxide-
developers/oxide/oxide.trunk/revision/892
To manage notifications about this bug go to:
https://bugs.launchpad.net/oxide/+bug/1402382/+subscriptions
Follow ups
References