Backed out changeset 670fb9adcd29 (bug 979481)

This commit is contained in:
Carsten "Tomcat" Book 2014-03-10 12:31:32 +01:00
Родитель fa63399a79
Коммит 5f14988ea2
4 изменённых файлов: 5 добавлений и 6 удалений

Просмотреть файл

@ -416,8 +416,6 @@ js::AssertSameCompartment(JSObject *objA, JSObject *objB)
JS_FRIEND_API(JSObject *)
js::DefaultObjectForContextOrNull(JSContext *cx)
{
if (cx->options().noDefaultCompartmentObject())
return nullptr;
return cx->maybeDefaultCompartmentObject();
}

Просмотреть файл

@ -175,7 +175,6 @@ XPCJSContextStack::InitSafeJSContext()
if (!mSafeJSContext)
MOZ_CRASH();
JSAutoRequest req(mSafeJSContext);
ContextOptionsRef(mSafeJSContext).setNoDefaultCompartmentObject(true);
JS_SetErrorReporter(mSafeJSContext, xpc::SystemErrorReporter);
@ -188,6 +187,10 @@ XPCJSContextStack::InitSafeJSContext()
MOZ_CRASH();
JS_AddNamedObjectRoot(mSafeJSContext, &mSafeJSContextGlobal, "SafeJSContext global");
// Make sure the context is associated with a proper compartment
// and not the default compartment.
js::SetDefaultObjectForContext(mSafeJSContext, mSafeJSContextGlobal);
// Note: make sure to set the private before calling
// InitClasses
nsRefPtr<SandboxPrivate> sp = new SandboxPrivate(principal, mSafeJSContextGlobal);

Просмотреть файл

@ -228,7 +228,6 @@ ThreadsafeAutoJSContext::operator JSContext*() const
AutoSafeJSContext::AutoSafeJSContext(MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_IN_IMPL)
: AutoJSContext(true MOZ_GUARD_OBJECT_NOTIFIER_PARAM_TO_PARENT)
, mAc(mCx, XPCJSRuntime::Get()->GetJSContextStack()->GetSafeJSContextGlobal())
{
}

Просмотреть файл

@ -100,6 +100,7 @@ public:
protected:
AutoJSContext(bool aSafe MOZ_GUARD_OBJECT_NOTIFIER_PARAM);
private:
// We need this Init() method because we can't use delegating constructor for
// the moment. It is a C++11 feature and we do not require C++11 to be
// supported to be able to compile Gecko.
@ -133,8 +134,6 @@ private:
class MOZ_STACK_CLASS AutoSafeJSContext : public AutoJSContext {
public:
AutoSafeJSContext(MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM);
private:
JSAutoCompartment mAc;
};
/**