Upon load failure, remove sync script from pending queue.

If a script element is to be loaded synchronously and executed in order,
it's queued for execution before loading. Should that load fail, the
immediate execution of the script,

  https://html.spec.whatwg.org/#execute-the-script-block

should only result in an error event being dispatched.

Implementation-wise, along with signalling error, the failed script must also
be removed from the internal in-order pending execution queue. We're done with
(not) executing the script and failure to remove it will cause subsequent
processing of its pending queue to see the script as having failed
to load and re-dispatch an error event.

R=tkent
BUG=503077

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

Cr-Commit-Position: refs/heads/master@{#357778}
7 files changed