From cc2ca9bc0fd33d3b14f7e170bfe5823d2e7ed4e6 Mon Sep 17 00:00:00 2001 From: "bienvenu%nventure.com" Date: Wed, 8 Oct 2003 04:50:30 +0000 Subject: [PATCH] bulletproof fix for 218414 crash opening imap folder, r/sr=mscott --- mailnews/base/src/nsMsgDBView.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/mailnews/base/src/nsMsgDBView.cpp b/mailnews/base/src/nsMsgDBView.cpp index d5a565391ac0..bdf5b60e0ec4 100644 --- a/mailnews/base/src/nsMsgDBView.cpp +++ b/mailnews/base/src/nsMsgDBView.cpp @@ -3054,7 +3054,11 @@ FnSortIdKeyPtr(const void *pItem1, const void *pItem2, void *privateData) nsIMsgDatabase *db = (nsIMsgDatabase *)privateData; - rv = db->CompareCollationKeys((*p1)->key,(*p1)->info.len,(*p2)->key,(*p2)->info.len,&retVal); + // if either collation key is null, make empty key < non-empty key. + if (! (*p1)->key || ! (*p2)->key) + retVal = (*p1)->key ? 1 : ((*p2)->key ? -1 : 0); + else + rv = db->CompareCollationKeys((*p1)->key,(*p1)->info.len,(*p2)->key,(*p2)->info.len,&retVal); NS_ASSERTION(NS_SUCCEEDED(rv),"compare failed"); if (retVal != 0)