fix for bug #185959 Many function(For exam. Reply, Forward) works and leads to crash before user login r=Henry sr=binevenu

This commit is contained in:
antonio.xu%sun.com 2003-01-12 08:47:34 +00:00
Родитель af0f0c8c27
Коммит 971c5bade1
3 изменённых файлов: 27 добавлений и 44 удалений

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

@ -399,7 +399,6 @@ nsImapProtocol::nsImapProtocol() :
m_closeNeededBeforeSelect = PR_FALSE;
m_needNoop = PR_FALSE;
m_noopCount = 0;
m_mailToFetch = PR_FALSE;
m_fetchMsgListIsNew = PR_FALSE;
m_fetchBodyListIsNew = PR_FALSE;
m_flagChangeCount = 0;
@ -3634,14 +3633,10 @@ void nsImapProtocol::PeriodicBiff()
void nsImapProtocol::SendSetBiffIndicatorEvent(nsMsgBiffState newState)
{
if (m_imapMiscellaneousSink)
if (m_imapMiscellaneousSink) {
m_imapMiscellaneousSink->SetBiffStateAndUpdate(this, newState);
if (newState == nsIMsgFolder::nsMsgBiffState_NewMail)
m_mailToFetch = PR_TRUE;
else
m_mailToFetch = PR_FALSE;
WaitForFEEventCompletion();
}
}

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

@ -635,7 +635,6 @@ private:
PRInt64 m_lastProgressTime;
PRBool m_notifySearchHit;
PRBool m_mailToFetch;
PRBool m_checkForNewMailDownloadsHeaders;
PRBool m_needNoop;
PRInt32 m_noopCount;

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

@ -321,30 +321,20 @@ NS_IMETHODIMP nsImapService::GetUrlForUri(const char *aMessageURI, nsIURI **aURL
rv = DecomposeImapURI(aMessageURI, getter_AddRefs(folder), getter_Copies(msgKey));
if (NS_SUCCEEDED(rv))
{
nsCOMPtr<nsIImapMessageSink> imapMessageSink(do_QueryInterface(folder, &rv));
if (NS_SUCCEEDED(rv))
{
nsCOMPtr<nsIImapUrl> imapUrl;
nsCAutoString urlSpec;
PRUnichar hierarchySeparator = GetHierarchyDelimiter(folder);
rv = CreateStartOfImapUrl(aMessageURI, getter_AddRefs(imapUrl), folder, nsnull, urlSpec, hierarchySeparator);
if (NS_FAILED(rv)) return rv;
imapUrl->SetImapMessageSink(imapMessageSink);
NS_ENSURE_SUCCESS(rv, rv);
rv = SetImapUrlSink(folder, imapUrl);
NS_ENSURE_SUCCESS(rv, rv);
nsCOMPtr <nsIMsgMailNewsUrl> mailnewsUrl = do_QueryInterface(imapUrl);
mailnewsUrl->SetFolder(folder);
if (folder)
{
if (mailnewsUrl)
{
PRBool useLocalCache = PR_FALSE;
folder->HasMsgOffline(atoi(msgKey), &useLocalCache);
mailnewsUrl->SetMsgIsInLocalCache(useLocalCache);
}
}
nsCOMPtr<nsIURI> url = do_QueryInterface(imapUrl);
url->GetSpec(urlSpec);
urlSpec.Append("fetch>UID>");
urlSpec.Append(char(hierarchySeparator));
@ -356,7 +346,6 @@ NS_IMETHODIMP nsImapService::GetUrlForUri(const char *aMessageURI, nsIURI **aURL
rv = url->SetSpec(urlSpec);
imapUrl->QueryInterface(NS_GET_IID(nsIURI), (void **) aURL);
}
}
return rv;
}