Fix bug 299553 by calling DocLoaderIsEmpty() when we stop the docloader.

r=biesi, sr=darin, a=bsmedberg
This commit is contained in:
bzbarsky%mit.edu 2005-07-13 16:43:30 +00:00
Родитель e759010dda
Коммит 5cd1b86026
2 изменённых файлов: 14 добавлений и 0 удалений

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

@ -311,6 +311,17 @@ nsDocLoader::Stop(void)
if (mLoadGroup)
rv = mLoadGroup->Cancel(NS_BINDING_ABORTED);
// Make sure to call DocLoaderIsEmpty now so that we reset mDocumentRequest,
// etc, as needed. We could be getting into here from a subframe onload, in
// which case the call to DocLoaderIsEmpty() is coming but hasn't quite
// happened yet, Canceling the loadgroup did nothing (because it was already
// empty), and we're about to start a new load (which is what triggered this
// Stop() call).
// XXXbz If the child frame loadgroups were requests in mLoadgroup, I suspect
// we wouldn't need the call here....
DocLoaderIsEmpty();
return rv;
}

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

@ -133,6 +133,9 @@ protected:
virtual nsresult SetDocLoaderParent(nsDocLoader * aLoader);
// DocLoaderIsEmpty should be called whenever the docloader may be empty.
// This method is idempotent and does nothing if the docloader is not in
// fact empty.
void DocLoaderIsEmpty();
PRBool IsBusy();