  
      if (m_frame->document())
          v8Context->AllowCodeGenerationFromStrings(m_frame->document()->contentSecurityPolicy()->allowEval(0, ContentSecurityPolicy::SuppressReport));
-@@ -352,6 +365,18 @@ bool V8DOMWindowShell::initContextIfNeeded()
+@@ -352,6 +365,25 @@ bool V8DOMWindowShell::initContextIfNeeded()
      // we do isolated worlds the WebCore way.
      m_frame->loader()->dispatchDidClearWindowObjectInWorld(0);
  
-+    // Excute a script to make node's relative modules work
 +    v8::Local<v8::Script> script = v8::Script::New(v8::String::New(
++        // Make node's relative modules work
 +#if defined(OS_WIN)
 +        "process.mainModule.filename = window.location.pathname.substr(1);"
 +#else

       '../Modules/filesystem',
       '../Modules/filesystem/chromium',
diff --git a/Source/WebCore/bindings/generic/BindingSecurity.cpp b/Source/WebCore/bindings/generic/BindingSecurity.cpp
index 87f4a57..4d8e7c3 100644
--- a/Source/WebCore/bindings/generic/BindingSecurity.cpp
+++ b/Source/WebCore/bindings/generic/BindingSecurity.cpp
@@ -47,27 +47,8 @@ static bool canAccessDocument(BindingState* state, Document* targetDocument, Sec
     if (!targetDocument)
         return false;
 

-    if (!active)
-        return false;
-
-    if (active->document()->securityOrigin()->canAccess(targetDocument->securityOrigin()))
-        return true;
-
-    if (reportingOption == ReportSecurityError)
