Index: chrome/renderer/extensions/chrome_v8_context_set.cc |
diff --git a/chrome/renderer/extensions/chrome_v8_context_set.cc b/chrome/renderer/extensions/chrome_v8_context_set.cc |
index 12084ffc2fffded9c4d4f434fa7396c3daf2f1c9..2f7c7530c2ef166eb2364208305708bdf259e099 100644 |
--- a/chrome/renderer/extensions/chrome_v8_context_set.cc |
+++ b/chrome/renderer/extensions/chrome_v8_context_set.cc |
@@ -60,10 +60,13 @@ ChromeV8ContextSet::ContextSet ChromeV8ContextSet::GetAll() const { |
} |
ChromeV8Context* ChromeV8ContextSet::GetCurrent() const { |
- if (!v8::Context::InContext()) |
- return NULL; |
- else |
- return GetByV8Context(v8::Context::GetCurrent()); |
+ v8::Local<v8::Context> current = v8::Context::GetCurrent(); |
+ return current.IsEmpty() ? NULL : GetByV8Context(current); |
+} |
+ |
+ChromeV8Context* ChromeV8ContextSet::GetCalling() const { |
+ v8::Local<v8::Context> calling = v8::Context::GetCalling(); |
+ return calling.IsEmpty() ? NULL : GetByV8Context(calling); |
} |
ChromeV8Context* ChromeV8ContextSet::GetByV8Context( |