| Index: src/runtime.cc | 
| diff --git a/src/runtime.cc b/src/runtime.cc | 
| index ff0503718b5c93262a33eda9f7ab8d24a6d379a4..42357d6cd329a8c5c7ac5a9fa99ed453c632ad60 100644 | 
| --- a/src/runtime.cc | 
| +++ b/src/runtime.cc | 
| @@ -8244,10 +8244,7 @@ RUNTIME_FUNCTION(ObjectPair, Runtime_ResolvePossiblyDirectEval) { | 
| if (!context->IsGlobalContext()) { | 
| // 'eval' is not bound in the global context. Just call the function | 
| // with the given arguments. This is not necessarily the global eval. | 
| -    if (receiver->IsContext()) { | 
| -      context = Handle<Context>::cast(receiver); | 
| -      receiver = Handle<Object>(context->get(index), isolate); | 
| -    } else if (receiver->IsJSContextExtensionObject()) { | 
| +    if (receiver->IsContext() || receiver->IsJSContextExtensionObject()) { | 
| receiver = Handle<JSObject>( | 
| isolate->context()->global()->global_receiver(), isolate); | 
| } | 
|  |