diff --git a/uriloader/exthandler/nsExternalHelperAppService.cpp b/uriloader/exthandler/nsExternalHelperAppService.cpp index 180b1037ede1..518ed34a3121 100644 --- a/uriloader/exthandler/nsExternalHelperAppService.cpp +++ b/uriloader/exthandler/nsExternalHelperAppService.cpp @@ -2139,6 +2139,9 @@ nsresult nsExternalAppHandler::CreateProgressListener() if (NS_SUCCEEDED(rv)) InitializeDownload(tr); + if (tr) + tr->OnStateChange(nsnull, mRequest, nsIWebProgressListener::STATE_START, NS_OK); + // note we might not have a listener here if the QI() failed, or if // there is no nsITransfer object, but we still call // SetWebProgressListener() to make sure our progress state is sane @@ -2147,9 +2150,6 @@ nsresult nsExternalAppHandler::CreateProgressListener() // OnStopRequest. SetWebProgressListener(tr); - if (tr) - tr->OnStateChange(nsnull, mRequest, nsIWebProgressListener::STATE_START, NS_OK); - return rv; }