summaryrefslogtreecommitdiffstats
path: root/courgette
diff options
context:
space:
mode:
authorkalman <kalman@chromium.org>2015-05-15 16:42:27 -0700
committerCommit bot <commit-bot@chromium.org>2015-05-15 23:42:33 +0000
commit70c00e241c68895fb245f53a6404866883ea0631 (patch)
tree628b288458cb90ca0dc6d31549ca51ee87bf3a09 /courgette
parent8feb018c6a97b6d075e7483464cc8fab9994a186 (diff)
downloadchromium_src-70c00e241c68895fb245f53a6404866883ea0631.zip
chromium_src-70c00e241c68895fb245f53a6404866883ea0631.tar.gz
chromium_src-70c00e241c68895fb245f53a6404866883ea0631.tar.bz2
Add fallback mechanism to release Extension ports if the JS context has been destroyed.
The bug is that chrome.runtime.sendMessage looks for when its callback is garbage collected, and when it is, close the associated port. It's important to close the port to notify the other end of the closure, cleanup renderer state both locally and on that other end, and potentially browser state. Unfortunately the port management is implemented in JS itself, and port releasing needs to go through JS. The problem is that it's not possible to call into JS while in the process of garbage collection, so we delay it, by which point the JS context may have been destroyed and again it's not possible to call into JS. We fixed the former case a while ago, and this patch fixes the latter. BUG=471599 R=rockot@chromium.org Review URL: https://codereview.chromium.org/1136953017 Cr-Commit-Position: refs/heads/master@{#330234}
Diffstat (limited to 'courgette')
0 files changed, 0 insertions, 0 deletions