Closed Bug 303924 Opened 19 years ago Closed 13 years ago

crash [@ PR_FormatTimeUSEnglish] | [@ nsMsgDatabase::ApplyRetentionSettings]

Categories

(MailNews Core :: Backend, defect, P5)

x86
All
defect

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: timeless, Assigned: Bienvenu)

Details

(Keywords: crash, Whiteboard: [revisit 2011-08-01])

Crash Data

Incident ID: 8162737 
Stack Signature PR_FormatTimeUSEnglish() faff8b07 
Product ID MozillaTrunk 
Build ID 2005080405 
Trigger Time 2005-08-07 09:52:08.0 
Platform LinuxIntel 
Operating System Linux 2.6.12-8mdksmp 
Module libnspr4.so + (000210ef) 
URL visited  
User Comments  
Since Last Crash 1 sec 
Total Uptime 13 sec 
Trigger Reason SIGSEGV: Segmentation Fault: (signal 11) 
Source File, Line No. /builds/tinderbox/SeaMonkey-Release/Linux_2.4.2-2
_Depend/mozilla/nsprpub/pr/src/misc/prtime.c, line 1850 
Stack Trace  

PR_FormatTimeUSEnglish()  [/builds/tinderbox/SeaMonkey-Release/Linux_2.4.2-2
_Depend/mozilla/nsprpub/pr/src/misc/prtime.c, line 1850]
nsMsgDatabase::ApplyRetentionSettings()  [/builds/tinderbox/SeaMonkey-
Release/Linux_2.4.2-2_Depend/mozilla/mailnews/db/msgdb/src/nsMsgDatabase.cpp, 
line 830]
nsMsgDBFolder::ApplyRetentionSettings()  [/builds/tinderbox/SeaMonkey-
Release/Linux_2.4.2-2_Depend/mozilla/mailnews/base/util/nsMsgDBFolder.cpp, line 
848]
nsMsgDBFolder::ApplyRetentionSettings()  [/builds/tinderbox/SeaMonkey-
Release/Linux_2.4.2-2_Depend/mozilla/mailnews/base/util/nsMsgDBFolder.cpp, line 
4368]
nsMsgPurgeService::PerformPurge()  [/builds/tinderbox/SeaMonkey-Release/Linux_
2.4.2-2_Depend/mozilla/mailnews/base/src/nsMsgPurgeService.cpp, line 254]
OnPurgeTimer()  [/builds/tinderbox/SeaMonkey-Release/Linux_2.4.2-2
_Depend/mozilla/mailnews/base/src/nsMsgPurgeService.cpp, line 73]
nsTimerImpl::Fire()  [/builds/tinderbox/SeaMonkey-Release/Linux_2.4.2-2
_Depend/mozilla/xpcom/threads/nsTimerImpl.cpp, line 395]
handleTimerEvent()  [/builds/tinderbox/SeaMonkey-Release/Linux_2.4.2-2
_Depend/mozilla/xpcom/threads/nsTimerImpl.cpp, line 459]
PL_HandleEvent()  [/builds/tinderbox/SeaMonkey-Release/Linux_2.4.2-2
_Depend/mozilla/xpcom/threads/plevent.c, line 688]
PL_ProcessPendingEvents()  [/builds/tinderbox/SeaMonkey-Release/Linux_2.4.2-2
_Depend/mozilla/xpcom/threads/plevent.c, line 623]
nsEventQueueImpl::ProcessPendingEvents()  [/builds/tinderbox/SeaMonkey-
Release/Linux_2.4.2-2_Depend/mozilla/xpcom/threads/nsEventQueue.cpp, line 421]
event_processor_callback()  [/builds/tinderbox/SeaMonkey-Release/Linux_2.4.2-2
_Depend/mozilla/widget/src/gtk/nsAppShell.cpp, line 188]
our_gdk_io_invoke()  [/builds/tinderbox/SeaMonkey-Release/Linux_2.4.2-2
_Depend/mozilla/widget/src/gtk/nsAppShell.cpp, line 76]
this seems more like an nspr bug, as unlikely as that sounds...
Status: UNCONFIRMED → NEW
Ever confirmed: true
Priority: -- → P5
(In reply to comment #1)
> this seems more like an nspr bug, as unlikely as that sounds...

david are you still of that opinion?
QA Contact: backend
it's just a guess, but yeah - do we see this in any of the crash reports? It could be some problem with the way we're interpreting the user's os local time settings.
It's difficult to debug this old crash, so I suggest that we
resolve it WONTFIX.

prtime.c didn't change between 2004/04/28 and 2005/11/14 on
the NSPRPUB_PRE_4_2_CLIENT_BRANCH (used by the Mozilla trunk).
So most likely SeaMonkey was using rev. 3.12.2.9 when this
bug was filed.  With that assumption, the crash occurred here:

         case 'M':
            /* minute ( 00 - 59 ) */
            PR_snprintf(tmpBuf,tmpBufSize,"%.2ld",time->tm_min );
            ADDSTR( bufPtr, bufSize, tmpBuf );  <=== CRASH
            break;

ADDSTR is a macro defined as follows:

/*
 * Add a string to the given buffer, incrementing the buffer pointer
 * and decrementing the buffer size appropriately.  Return 0 on error.
 */
#define ADDSTR( buf, bufSize, str )             \
do                                              \
{                                               \
   PRUint32 strSize = strlen( str );              \
   if( strSize > bufSize )                      \
   {                                            \
      if( bufSize==0 )                          \
         *(--buf) = '\0';                       \
      else                                      \
         *buf = '\0';                           \
      return 0;                                 \
   }                                            \
   memcpy(buf, str, strSize);                   \
   buf += strSize;                              \
   bufSize -= strSize;                          \
}                                               \
while(0)
i can't remember what kind of line reporting you get on linux for macros. i had kinda hoped that time might be null, but i don't think that's possible. other options are one of str or buf is null. i'm pretty sure buf can't be....
Product: Core → MailNews Core
some FF crashes on crash-stats. less than 10 per month and all are release builds, none nightlies. examples
bp-5428c21b-f966-4511-96d9-099492090619
bp-09921145-63e0-463e-a0e1-32a882091108
bp-eb140d56-1a48-4a41-b0cf-b44a22091108

no thunderbird seen - but extrapolating FF crashes it's entirely possible we won't see TB crashes until 3.0 ships. (didn't bother to check talkback - it's too dang slow)
Whiteboard: [revisit 2010-01-01]
Crash Signature: [@ PR_FormatTimeUSEnglish]
bp-dd146622-75f9-41ca-a7f8-2f6bc2110601  TB 3.1.7
0	nspr4.dll	PR_FormatTimeUSEnglish	nsprpub/pr/src/misc/prtime.c:1889
1	thunderbird.exe	nsMsgDatabase::ApplyRetentionSettings	mailnews/db/msgdb/src/nsMsgDatabase.cpp:5060
2	thunderbird.exe	nsMsgDBFolder::ApplyRetentionSettings	mailnews/base/util/nsMsgDBFolder.cpp:4695
3	thunderbird.exe	nsMsgDBFolder::ApplyRetentionSettings	mailnews/base/util/nsMsgDBFolder.cpp:4675
4	thunderbird.exe	nsMsgLocalMailFolder::UpdateFolder	mailnews/local/src/nsLocalMailFolder.cpp:634 

no crashes yet for version 5 - but a bit early to tell 


I also found this, with different line numbers than the above...
memcpy | PR_FormatTimeUSEnglish
bp-b42cf6bf-d00f-4c34-a79c-bc17e2110611
0	mozcrt19.dll	memcpy	memcpy.asm:407
1	nspr4.dll	PR_FormatTimeUSEnglish	nsprpub/pr/src/misc/prtime.c:1871
2	nspr4.dll	nspr4.dll@0x11a0f	
3		@0x69ab24f	
4	thunderbird.exe	nsMsgIncomingServer::GetRetentionSettings	mailnews/base/util/nsMsgIncomingServer.cpp:1459
5	thunderbird.exe	nsMsgIncomingServer::Release	mailnews/base/util/nsMsgIncomingServer.cpp:100
6	thunderbird.exe	nsMsgDBFolder::GetRetentionSettings	mailnews/base/util/nsMsgDBFolder.cpp:1520
7	thunderbird.exe	nsMsgDBFolder::ApplyRetentionSettings	mailnews/base/util/nsMsgDBFolder.cpp:4695
8	thunderbird.exe	nsMsgDBFolder::ApplyRetentionSettings	mailnews/base/util/nsMsgDBFolder.cpp:4675
9	thunderbird.exe	nsMsgLocalMailFolder::UpdateFolder	mailnews/local/src/nsLocalMailFolder.cpp:634
OS: Linux → All
Summary: [@ PR_FormatTimeUSEnglish] → crash [@ PR_FormatTimeUSEnglish] | [@ nsMsgDatabase::ApplyRetentionSettings]
Whiteboard: [revisit 2010-01-01] → [revisit 2011-08-01]
vseerror: You set [revisit 2011-08-01]. Is this still an issue?
thanks for waking me up from my nap :)

nothing on crash-stats for tha past 4 months.
so => WFM
Status: NEW → RESOLVED
Crash Signature: [@ PR_FormatTimeUSEnglish] → [@ PR_FormatTimeUSEnglish] [@ PR_FormatTimeUSEnglish()]
Closed: 13 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.