GlobalWindowImpl::SetNewDocument: fixed multiple initialization of JSContext. Always clears the scope first.

This commit is contained in:
beard%netscape.com 1999-04-02 06:22:00 +00:00
Родитель f951d14663
Коммит 60318f70d0
1 изменённых файлов: 10 добавлений и 11 удалений

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

@ -213,20 +213,19 @@ GlobalWindowImpl::SetContext(nsIScriptContext *aContext)
NS_IMETHODIMP_(void)
GlobalWindowImpl::SetNewDocument(nsIDOMDocument *aDocument)
{
if (nsnull != mDocument) {
ClearAllTimeouts();
ClearAllTimeouts();
if (nsnull != mScriptObject && nsnull != mContext) {
JS_ClearScope((JSContext *)mContext->GetNativeContext(),
(JSObject *)mScriptObject);
}
NS_RELEASE(mDocument);
if (nsnull != mContext) {
mContext->GC();
}
if (nsnull != mScriptObject && nsnull != mContext) {
JS_ClearScope((JSContext *)mContext->GetNativeContext(),
(JSObject *)mScriptObject);
}
if (nsnull != mDocument)
NS_RELEASE(mDocument);
if (nsnull != mContext)
mContext->GC();
mDocument = aDocument;
if (nsnull != mDocument) {