Index: chrome/renderer/extensions/miscellaneous_bindings.cc |
diff --git a/chrome/renderer/extensions/miscellaneous_bindings.cc b/chrome/renderer/extensions/miscellaneous_bindings.cc |
index dbf2784c90aba2d2c0e2cee31debe98e2079c06a..b87fdc64bed8fc8151c15b6674ce0dd6d82ad70f 100644 |
--- a/chrome/renderer/extensions/miscellaneous_bindings.cc |
+++ b/chrome/renderer/extensions/miscellaneous_bindings.cc |
@@ -20,6 +20,7 @@ |
#include "content/public/renderer/render_thread.h" |
#include "content/public/renderer/render_view.h" |
#include "grit/renderer_resources.h" |
+#include "third_party/WebKit/Source/WebKit/chromium/public/WebScopedMicrotaskSuppression.h" |
#include "v8/include/v8.h" |
// Message passing API example (in a content script): |
@@ -145,6 +146,7 @@ class ExtensionImpl : public ChromeV8Extension { |
static void GCCallback(v8::Persistent<v8::Value> object, void* parameter) { |
v8::HandleScope handle_scope; |
GCCallbackArgs* args = reinterpret_cast<GCCallbackArgs*>(parameter); |
+ WebKit::WebScopedMicrotaskSuppression suppression; |
args->callback->Call(args->callback->CreationContext()->Global(), 0, NULL); |
args->callback.Dispose(); |
args->object.Dispose(); |