v8::Handle<v8::Object> wrap(HTMLDocument* impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) { ASSERT(impl); v8::Handle<v8::Object> wrapper = V8HTMLDocument::createWrapper(impl, creationContext, isolate); if (wrapper.IsEmpty()) return wrapper; if (!isolatedWorldForEnteredContext()) { if (Frame* frame = impl->frame()) frame->script()->windowShell(mainThreadNormalWorld())->updateDocumentWrapper(wrapper); } return wrapper; }
v8::Handle<v8::Value> V8XMLHttpRequest::constructorCustom(const v8::Arguments& args) { ScriptExecutionContext* context = getScriptExecutionContext(); RefPtr<SecurityOrigin> securityOrigin; if (context->isDocument()) { if (DOMWrapperWorld* world = isolatedWorldForEnteredContext()) securityOrigin = world->isolatedWorldSecurityOrigin(); } RefPtr<XMLHttpRequest> xmlHttpRequest = XMLHttpRequest::create(context, securityOrigin); v8::Handle<v8::Object> wrapper = args.Holder(); V8DOMWrapper::associateObjectWithWrapper(xmlHttpRequest.release(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent); return wrapper; }
v8::Handle<v8::Object> wrap(Document* impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) { ASSERT(impl); if (impl->isHTMLDocument()) return wrap(static_cast<HTMLDocument*>(impl), creationContext, isolate); #if ENABLE(SVG) if (impl->isSVGDocument()) return wrap(static_cast<SVGDocument*>(impl), creationContext, isolate); #endif v8::Handle<v8::Object> wrapper = V8Document::createWrapper(impl, creationContext, isolate); if (wrapper.IsEmpty()) return wrapper; if (!isolatedWorldForEnteredContext()) { if (Frame* frame = impl->frame()) frame->script()->windowShell(mainThreadNormalWorld())->updateDocumentWrapper(wrapper); } return wrapper; }
bool ScriptController::shouldBypassMainWorldContentSecurityPolicy() { if (DOMWrapperWorld* world = isolatedWorldForEnteredContext()) return world->isolatedWorldHasContentSecurityPolicy(); return false; }