angler-fishThe Vulnerability History Project

WebAudio: Fix AudioNode leak in a case that AudioNode is not disconnected from the graph explicitly.

      The main purpose of this CL is to introduce ThreadState::markAsZombie
and ThreadState::purifyZombies, and to apply them for WebAudio.
Objects marked as zombies are not finalized until purifyZombies is
called.

This CL also adds MarkingTasks, which enable to run tasks before/
after Oilpan marking. AudioContext implements MarkingTask in order to
call purifyZombie before marking, and simplify AudioContext::trace.


BUG=434136,455993

Review URL: https://codereview.chromium.org/802593004

git-svn-id: svn://svn.chromium.org/blink/trunk@190366 bbb929c8-8fbe-4397-9dbb-9b2b20218538
    
commit c4f71fdcd1229b3b7460f9001415f9728009cc81
+8 -37
+1 -14
-5
+5
+8 -26
-1
-14
-58
+2 -29
expand_less