Closed Bug 198104 Opened 21 years ago Closed 21 years ago

Memory leak of 16488 bytes from 458 blocks allocated in nsMsgSearchOfflineMail::MatchTerms

Categories

(SeaMonkey :: MailNews: Message Display, defect)

defect
Not set
major

Tracking

(Not tracked)

RESOLVED FIXED
mozilla1.4final

People

(Reporter: pkwarren, Assigned: Bienvenu)

References

Details

(Keywords: memory-leak)

Attachments

(1 file)

I'm seeing several memory leaks in this function when running Mozilla 1.3 under
Purify (triggered by searching within the Mail/News interface - "Subject or
Sender Contains"):

[W] MLK: Memory leak of 16488 bytes from 458 blocks allocated in
nsMsgSearchOfflineMail::MatchTerms(nsIMsgDBHdr *,nsISupportsArray *,char
const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,char const*,UINT,int,int *)
[msgbase.dll]
        Distribution of leaked blocks
             16488 bytes from 458 blocks of 36 bytes (first block: 0x03b49e10) 
        Allocation location
            new(UINT)      [new.cpp:23]
            nsMsgSearchOfflineMail::MatchTerms(nsIMsgDBHdr *,nsISupportsArray
*,char const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,char const*,UINT,int,int
*) [nsMsgLocalSearch.cpp:628]
            nsMsgSearchOfflineMail::MatchTermsForSearch(nsIMsgDBHdr
*,nsISupportsArray *,char const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,int *)
[nsMsgLocalSearch.cpp:372]
            nsMsgSearchOfflineMail::Search(int *) [nsMsgLocalSearch.cpp:684]
            nsMsgSearchScopeTerm::TimeSlice(int *) [nsMsgSearchTerm.cpp:1473]
            nsMsgSearchSession::TimeSliceSerial(int *) [nsMsgSearchSession.cpp:687]
            nsMsgSearchSession::TimeSlice(int *) [nsMsgSearchSession.cpp:651]
            nsMsgSearchSession::TimerCallback(nsITimer *,void *)
[nsMsgSearchSession.cpp:517]
            nsTimerImpl::Fire(void) [nsTimerImpl.cpp:382]
            nsTimerManager::FireNextIdleTimer(void) [nsTimerImpl.cpp:614]

[W] MLK: Memory leak of 828 bytes from 23 blocks allocated in
nsMsgSearchOfflineMail::MatchTerms(nsIMsgDBHdr *,nsISupportsArray *,char
const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,char const*,UINT,int,int *)
[msgbase.dll]
        Distribution of leaked blocks
               828 bytes from 23 blocks of 36 bytes (first block: 0x04255f78) 
        Allocation location
            new(UINT)      [new.cpp:23]
            nsMsgSearchOfflineMail::MatchTerms(nsIMsgDBHdr *,nsISupportsArray
*,char const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,char const*,UINT,int,int
*) [nsMsgLocalSearch.cpp:628]
            nsMsgSearchOfflineMail::MatchTermsForSearch(nsIMsgDBHdr
*,nsISupportsArray *,char const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,int *)
[nsMsgLocalSearch.cpp:372]
            nsMsgSearchOfflineMail::Search(int *) [nsMsgLocalSearch.cpp:684]
            nsMsgSearchScopeTerm::TimeSlice(int *) [nsMsgSearchTerm.cpp:1473]
            nsMsgSearchSession::TimeSliceSerial(int *) [nsMsgSearchSession.cpp:687]
            nsMsgSearchSession::TimeSlice(int *) [nsMsgSearchSession.cpp:651]
            nsMsgSearchSession::StartTimer(void) [nsMsgSearchSession.cpp:538]
            nsMsgSearchSession::SearchWOUrls(void) [nsMsgSearchSession.cpp:544]
            nsMsgSearchSession::BeginSearching(void) [nsMsgSearchSession.cpp:446]

[W] MLK: Memory leak of 17964 bytes from 499 blocks allocated in
nsMsgSearchOfflineMail::MatchTerms(nsIMsgDBHdr *,nsISupportsArray *,char
const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,char const*,UINT,int,int *)
[msgbase.dll]
        Distribution of leaked blocks
             17964 bytes from 499 blocks of 36 bytes (first block: 0x09b10988) 
        Allocation location
            new(UINT)      [new.cpp:23]
            nsMsgSearchOfflineMail::MatchTerms(nsIMsgDBHdr *,nsISupportsArray
*,char const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,char const*,UINT,int,int
*) [nsMsgLocalSearch.cpp:628]
            nsMsgSearchOfflineMail::MatchTermsForSearch(nsIMsgDBHdr
*,nsISupportsArray *,char const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,int *)
[nsMsgLocalSearch.cpp:372]
            nsMsgSearchSession::MatchHdr(nsIMsgDBHdr *,nsIMsgDatabase *,int *)
[nsMsgSearchSession.cpp:830]
            nsMsgQuickSearchDBView::OnNewHeader(UINT,UINT,int)
[nsMsgQuickSearchDBView.cpp:102]
            nsMsgDBView::OnKeyAdded(UINT,UINT,int,nsIDBChangeListener *)
[nsMsgDBView.cpp:4358]
            nsMsgDatabase::NotifyKeyAddedAll(UINT,UINT,int,nsIDBChangeListener
*) [nsMsgDatabase.cpp:536]
            nsMsgDatabase::AddNewHdrToDB(nsIMsgDBHdr *,int) [nsMsgDatabase.cpp:2774]
            nsNNTPNewsgroupList::ParseLine(char *,UINT *)
[nsNNTPNewsgroupList.cpp:686]
            nsNNTPNewsgroupList::ProcessXOVERLINE(char const*,UINT *)
[nsNNTPNewsgroupList.cpp:797]

[I] MPK: Potential memory leak of 36 bytes from 1 block allocated in
nsMsgSearchOfflineMail::MatchTerms(nsIMsgDBHdr *,nsISupportsArray *,char
const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,char const*,UINT,int,int *)
[msgbase.dll]
        Distribution of potentially leaked blocks
                36 bytes from 1 block of 36 bytes (0x10a50908) 
        Allocation location
            new(UINT)      [new.cpp:23]
            nsMsgSearchOfflineMail::MatchTerms(nsIMsgDBHdr *,nsISupportsArray
*,char const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,char const*,UINT,int,int
*) [nsMsgLocalSearch.cpp:628]
            nsMsgSearchOfflineMail::MatchTermsForSearch(nsIMsgDBHdr
*,nsISupportsArray *,char const*,nsIMsgSearchScopeTerm *,nsIMsgDatabase *,int *)
[nsMsgLocalSearch.cpp:372]
            nsMsgSearchSession::MatchHdr(nsIMsgDBHdr *,nsIMsgDatabase *,int *)
[nsMsgSearchSession.cpp:830]
            nsMsgQuickSearchDBView::OnNewHeader(UINT,UINT,int)
[nsMsgQuickSearchDBView.cpp:102]
            nsMsgDBView::OnKeyAdded(UINT,UINT,int,nsIDBChangeListener *)
[nsMsgDBView.cpp:4358]
            nsMsgDatabase::NotifyKeyAddedAll(UINT,UINT,int,nsIDBChangeListener
*) [nsMsgDatabase.cpp:536]
            nsMsgDatabase::AddNewHdrToDB(nsIMsgDBHdr *,int) [nsMsgDatabase.cpp:2774]
            nsNNTPNewsgroupList::ParseLine(char *,UINT *)
[nsNNTPNewsgroupList.cpp:686]
            nsNNTPNewsgroupList::ProcessXOVERLINE(char const*,UINT *)
[nsNNTPNewsgroupList.cpp:797]
I believe this started occuring with the checkin for Bug 171073.
mass re-assign.
Assignee: naving → sspitzer
over to david.

with persistant mailviews, having QS leak is going to be a problem.
Assignee: sspitzer → bienvenu
Keywords: nsbeta1
Target Milestone: --- → mozilla1.4final
Attached patch proposed fixSplinter Review
Comment on attachment 122798 [details] [diff] [review]
proposed fix

r/sr/a=sspitzer
Attachment #122798 - Flags: superreview+
Attachment #122798 - Flags: review+
Attachment #122798 - Flags: approval1.4+
fix checked in.
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
making philip as QA contact, since he can verify
QA Contact: laurel → pkw
*** Bug 195163 has been marked as a duplicate of this bug. ***
Product: Browser → Seamonkey
Component: MailNews: Search → MailNews: Message Display
QA Contact: pkwarren → search
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: