Fixing bug 414658. Make sure to not use a context from a different thread when calling functions on a wrapped JS object. r+sr=peterv@propagandism.org

This commit is contained in:
jst%mozilla.org 2008-01-29 23:56:49 +00:00
Родитель f6ee1305cb
Коммит f72959f97b
1 изменённых файлов: 9 добавлений и 1 удалений

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

@ -516,7 +516,15 @@ GetContextFromObject(JSObject *obj)
XPCWrappedNativeScope* scope =
XPCWrappedNativeScope::FindInJSObjectScope(ccx, obj);
XPCContext *xpcc = scope->GetContext();
return xpcc ? xpcc->GetJSContext() : nsnull;
if(xpcc)
{
JSContext *cx = xpcc->GetJSContext();
if(cx->thread->id == js_CurrentThreadId())
return cx;
}
return nsnull;
}
NS_IMETHODIMP