Bug 68111 - Address lifetime issues in OfflineAudioDestinationNode (take 2)
Summary: Address lifetime issues in OfflineAudioDestinationNode (take 2)
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Chris Rogers
Depends on:
Reported: 2011-09-14 13:25 PDT by Chris Rogers
Modified: 2011-09-14 14:38 PDT (History)
1 user (show)

See Also:

Patch (2.11 KB, patch)
2011-09-14 13:27 PDT, Chris Rogers
no flags Details | Formatted Diff | Diff
Patch (2.52 KB, patch)
2011-09-14 13:43 PDT, Chris Rogers
kbr: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Rogers 2011-09-14 13:25:37 PDT
Address Address lifetime issues in OfflineAudioDestinationNode (take 2)
Comment 1 Chris Rogers 2011-09-14 13:27:32 PDT
Created attachment 107384 [details]
Comment 2 Chris Rogers 2011-09-14 13:31:42 PDT
my previous patch was incorrect:

It's too late to call waitForThreadCompletion() in the destructor, since there's could still be a pending callOnMainThread() using this object.

The object must stay alive longer.  The approach taken with this new patch is to take a reference just before the worker thread is created, then release the reference once the callOnMainThread() handler has finished.  Then we can avoid calling waitForThreadCompletion()
Comment 3 Chris Rogers 2011-09-14 13:43:59 PDT
Created attachment 107388 [details]
Comment 4 Kenneth Russell 2011-09-14 14:20:30 PDT
Comment on attachment 107388 [details]

Looks good to me.
Comment 5 Chris Rogers 2011-09-14 14:38:37 PDT
Committed r95124: <http://trac.webkit.org/changeset/95124>