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 fa7d34b05202711aaefa06a6a559c5e76e0086fa..b9eb58005d2ef83018abbd0ed6ae5eb19a4b7582 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()); |
+ return v8::Context::InContext() ? |
+ GetByV8Context(v8::Context::GetCurrent()) : NULL; |
+} |
+ |
+ChromeV8Context* ChromeV8ContextSet::GetCalling() const { |
+ v8::Local<v8::Context> calling = v8::Context::GetCalling(); |
+ return calling.IsEmpty() ? NULL : GetByV8Context(calling); |
} |
ChromeV8Context* ChromeV8ContextSet::GetByV8Context( |