Unset the Instrumented Callback In Progress Flag Later
Fixing a race condition in the task manager when two tasks are in flight.
Suppose we have an instrumented task currently running as a result of a callback.
Queue: [A]
Next, [A] makes an async call, returning back. In the meantime [B] gets put on the queue.
Queue: [A] [B]
[A] goes back into execution and finishes. When it finishes, it marks that it's no longer
in an instrumented callback and directly executes [B].
[B] has lost its instrumented callback state during the enqueue into the task queue.
As a result, the task queue throws an error.
The fix here is to unset the instrumented callback state after [B] finishes.
BUG=268429
Review URL: https://chromiumcodereview.appspot.com/
22361003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216139 0039d316-1c4b-4281-b951-d872f2087c98