| Index: Source/modules/webaudio/AudioContext.h
|
| diff --git a/Source/modules/webaudio/AudioContext.h b/Source/modules/webaudio/AudioContext.h
|
| index c27545d6277e251ffca75569415f2811a4dce616..79f54c767867c7ad788df620cb62a8ed22835368 100644
|
| --- a/Source/modules/webaudio/AudioContext.h
|
| +++ b/Source/modules/webaudio/AudioContext.h
|
| @@ -140,6 +140,9 @@ public:
|
| // Called periodically at the end of each render quantum to dereference finished source nodes.
|
| void derefFinishedSourceNodes();
|
|
|
| +#if ENABLE(OILPAN)
|
| + void registerLiveAudioSummingJunction(AudioSummingJunction&);
|
| +#endif
|
| // We schedule deletion of all marked nodes at the end of each realtime render quantum.
|
| void markForDeletion(AudioNode*);
|
| void deleteMarkedNodes();
|
| @@ -276,6 +279,17 @@ private:
|
| // before deref().
|
| Vector<RefPtr<AudioNode> > m_referencedNodes;
|
|
|
| +#if ENABLE(OILPAN)
|
| + class AudioSummingJunctionDisposer {
|
| + public:
|
| + explicit AudioSummingJunctionDisposer(AudioSummingJunction& junction) : m_junction(junction) { }
|
| + ~AudioSummingJunctionDisposer();
|
| +
|
| + private:
|
| + AudioSummingJunction& m_junction;
|
| + };
|
| + HeapHashMap<WeakMember<AudioSummingJunction>, OwnPtr<AudioSummingJunctionDisposer> > m_liveAudioSummingJunctions;
|
| +#endif
|
| // Accumulate nodes which need to be deleted here.
|
| // This is copied to m_nodesToDelete at the end of a render cycle in handlePostRenderTasks(), where we're assured of a stable graph
|
| // state which will have no references to any of the nodes in m_nodesToDelete once the context lock is released
|
|
|