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

Issue 23596014: Keep AudioScheduledSourceNode alive until onended is called. (Closed)

Created:
7 years, 3 months ago by Raymond Toy (Google)
Modified:
7 years, 3 months ago
CC:
blink-reviews, dglazkov+blink, eae+blinkwatch
Visibility:
Public.

Description

Keep AudioScheduledSourceNode alive until onended is called. Also, if the document has already gone away, we want to avoid firing the event at all. This is similar to what ScriptProcessorNode does with events. BUG=269753 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=157615

Patch Set 1 #

Total comments: 2

Patch Set 2 : Use ActiveDOMObject #

Patch Set 3 : #

Patch Set 4 : Add ActiveDOMObject IDL attribute #

Patch Set 5 : Implement ActiveDOMObject::stop() #

Total comments: 2

Patch Set 6 : #

Patch Set 7 : Rebase #

Total comments: 5

Patch Set 8 : Remove ActiveDOMObject #

Unified diffs Side-by-side diffs Delta from patch set Stats (+27 lines, -7 lines) Patch
M Source/modules/webaudio/AudioScheduledSourceNode.h View 1 2 3 4 5 6 7 2 chunks +11 lines, -1 line 0 comments Download
M Source/modules/webaudio/AudioScheduledSourceNode.cpp View 1 2 3 4 5 6 7 1 chunk +16 lines, -6 lines 0 comments Download

Messages

Total messages: 28 (0 generated)
haraken
We should avoid manual ref()/deref(). As discussed offline, we should use ActiveDOMObject::hasPendingActivity. https://codereview.chromium.org/23596014/diff/1/Source/modules/webaudio/AudioScheduledSourceNode.cpp File Source/modules/webaudio/AudioScheduledSourceNode.cpp ...
7 years, 3 months ago (2013-09-05 23:42:44 UTC) #1
Raymond Toy (Google)
On 2013/09/05 23:42:44, haraken wrote: > We should avoid manual ref()/deref(). As discussed offline, we ...
7 years, 3 months ago (2013-09-05 23:48:46 UTC) #2
Raymond Toy (Google)
PTAL. This uses ActiveDOMObject as suggested, but it doesn't work. Debug builds fail with the ...
7 years, 3 months ago (2013-09-06 16:56:12 UTC) #3
haraken
On 2013/09/06 16:56:12, rtoy wrote: > PTAL. This uses ActiveDOMObject as suggested, but it doesn't ...
7 years, 3 months ago (2013-09-06 17:23:21 UTC) #4
Raymond Toy (Google)
PTAL again. As discussed offline, I've added the setPendingActivity/unsetPendingActivity as needed and also added suspendIfNeeded. ...
7 years, 3 months ago (2013-09-06 20:12:34 UTC) #5
haraken
You need to add [ActiveDOMObjet] IDL attribute to AudioScheduledSourceNode.idl and OscillatorNode.cpp. I'm not familiar with ...
7 years, 3 months ago (2013-09-06 20:21:35 UTC) #6
Ken Russell (switch to Gerrit)
I looked through the ActiveDOMObject interface and don't think that any of the methods it ...
7 years, 3 months ago (2013-09-06 21:33:46 UTC) #7
haraken
On 2013/09/06 21:33:46, Ken Russell wrote: > I looked through the ActiveDOMObject interface and don't ...
7 years, 3 months ago (2013-09-06 21:39:59 UTC) #8
Raymond Toy (Google)
On 2013/09/06 20:21:35, haraken wrote: > You need to add [ActiveDOMObjet] IDL attribute to AudioScheduledSourceNode.idl ...
7 years, 3 months ago (2013-09-06 21:59:20 UTC) #9
Raymond Toy (Google)
On 2013/09/06 21:33:46, Ken Russell wrote: > I looked through the ActiveDOMObject interface and don't ...
7 years, 3 months ago (2013-09-06 22:02:23 UTC) #10
haraken
On 2013/09/06 22:02:23, rtoy wrote: > On 2013/09/06 21:33:46, Ken Russell wrote: > > I ...
7 years, 3 months ago (2013-09-06 22:53:06 UTC) #11
Raymond Toy (Google)
On 2013/09/06 22:53:06, haraken wrote: > On 2013/09/06 22:02:23, rtoy wrote: > > On 2013/09/06 ...
7 years, 3 months ago (2013-09-06 23:11:15 UTC) #12
haraken
On 2013/09/06 23:11:15, rtoy wrote: > I don't think so. This stop has nothing to ...
7 years, 3 months ago (2013-09-07 00:22:14 UTC) #13
Raymond Toy (Google)
On 2013/09/07 00:22:14, haraken wrote: > On 2013/09/06 23:11:15, rtoy wrote: > > I don't ...
7 years, 3 months ago (2013-09-09 17:41:57 UTC) #14
haraken
LGTM with a comment. https://codereview.chromium.org/23596014/diff/29001/Source/modules/webaudio/AudioScheduledSourceNode.cpp File Source/modules/webaudio/AudioScheduledSourceNode.cpp (right): https://codereview.chromium.org/23596014/diff/29001/Source/modules/webaudio/AudioScheduledSourceNode.cpp#newcode215 Source/modules/webaudio/AudioScheduledSourceNode.cpp:215: if (m_notifyingEndedListener) How about just ...
7 years, 3 months ago (2013-09-09 17:58:51 UTC) #15
Raymond Toy (Google)
https://codereview.chromium.org/23596014/diff/29001/Source/modules/webaudio/AudioScheduledSourceNode.cpp File Source/modules/webaudio/AudioScheduledSourceNode.cpp (right): https://codereview.chromium.org/23596014/diff/29001/Source/modules/webaudio/AudioScheduledSourceNode.cpp#newcode215 Source/modules/webaudio/AudioScheduledSourceNode.cpp:215: if (m_notifyingEndedListener) On 2013/09/09 17:58:51, haraken wrote: > > ...
7 years, 3 months ago (2013-09-09 18:23:44 UTC) #16
haraken
LGTM
7 years, 3 months ago (2013-09-09 18:29:16 UTC) #17
Raymond Toy (Google)
Thanks for the review! Ken, do you want to take a final look? I need ...
7 years, 3 months ago (2013-09-09 18:42:02 UTC) #18
Ken Russell (switch to Gerrit)
https://codereview.chromium.org/23596014/diff/37001/Source/modules/webaudio/AudioScheduledSourceNode.cpp File Source/modules/webaudio/AudioScheduledSourceNode.cpp (right): https://codereview.chromium.org/23596014/diff/37001/Source/modules/webaudio/AudioScheduledSourceNode.cpp#newcode202 Source/modules/webaudio/AudioScheduledSourceNode.cpp:202: unsetPendingActivity(this); This looks wrong now. What happens if we ...
7 years, 3 months ago (2013-09-09 19:45:47 UTC) #19
Ken Russell (switch to Gerrit)
https://codereview.chromium.org/23596014/diff/37001/Source/modules/webaudio/AudioScheduledSourceNode.cpp File Source/modules/webaudio/AudioScheduledSourceNode.cpp (right): https://codereview.chromium.org/23596014/diff/37001/Source/modules/webaudio/AudioScheduledSourceNode.cpp#newcode184 Source/modules/webaudio/AudioScheduledSourceNode.cpp:184: setPendingActivity(this); Sorry, I failed to realize this before. This ...
7 years, 3 months ago (2013-09-09 21:30:04 UTC) #20
Ken Russell (switch to Gerrit)
https://codereview.chromium.org/23596014/diff/37001/Source/modules/webaudio/AudioScheduledSourceNode.cpp File Source/modules/webaudio/AudioScheduledSourceNode.cpp (right): https://codereview.chromium.org/23596014/diff/37001/Source/modules/webaudio/AudioScheduledSourceNode.cpp#newcode184 Source/modules/webaudio/AudioScheduledSourceNode.cpp:184: setPendingActivity(this); On 2013/09/09 21:30:05, Ken Russell wrote: > Sorry, ...
7 years, 3 months ago (2013-09-09 21:34:30 UTC) #21
Ken Russell (switch to Gerrit)
After offline discussion, it's certain that we do not want to make AudioScheduledSourceNode an ActiveDOMObject. ...
7 years, 3 months ago (2013-09-09 21:55:11 UTC) #22
Raymond Toy (Google)
On 2013/09/09 21:55:11, Ken Russell wrote: > After offline discussion, it's certain that we do ...
7 years, 3 months ago (2013-09-11 16:47:49 UTC) #23
Ken Russell (switch to Gerrit)
lgtm
7 years, 3 months ago (2013-09-11 17:08:30 UTC) #24
haraken
This looks nicer. LGTM.
7 years, 3 months ago (2013-09-11 17:14:18 UTC) #25
Raymond Toy (Google)
Thanks, everyone, for the review. And for the record, all of the webaudio layout tests ...
7 years, 3 months ago (2013-09-11 17:23:09 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/rtoy@google.com/23596014/45001
7 years, 3 months ago (2013-09-11 17:43:19 UTC) #27
commit-bot: I haz the power
7 years, 3 months ago (2013-09-11 22:46:40 UTC) #28
Message was sent while issue was closed.
Change committed as 157615

Powered by Google App Engine
This is Rietveld 408576698