Closed
Bug 33588
Opened 25 years ago
Closed 25 years ago
Crash when sorting by sender with Japanese name.
Categories
(MailNews Core :: Internationalization, defect, P3)
Tracking
(Not tracked)
VERIFIED
FIXED
M15
People
(Reporter: scottputterman, Assigned: nhottanscp)
Details
(Keywords: crash)
I have at least one Japanese name in my thread pane as a sender. When I click
on the sender column in order to sort I get the following crash in
nsUCvJaSupport.cpp
memcpy(unsigned char * 0x0000002d, unsigned char * 0x049f2950, unsigned long 3)
line 355
nsEncoderSupport::FlushBuffer(char * * 0x0012d3e0, const char * 0x10258e9d) line
477 + 20 bytes
nsEncoderSupport::Finish(nsEncoderSupport * const 0x049f2990, char * 0x0000002d,
int * 0x0012d420) line 571 + 16 bytes
MimeCharsetConverterClass::Convert(const char * 0x049f11d0, const int 13, char *
* 0x0012d52c, int * 0x0012d504, int * 0x00000000) line 1424 + 26 bytes
MIME_ConvertCharset(const int 0, const char * 0x034bc874, const char *
0x0012d5f0, const char * 0x049f11d0, const int 13, char * * 0x0012d52c, int *
0x0012d504, int * 0x00000000) line 1497 + 26 bytes
MIME_ConvertString(const char * 0x034bc874, const char * 0x0012d5f0, const char
* 0x049f11d0, char * * 0x0012d52c) line 1484 + 43 bytes
nsMsgHeaderParser::ExtractHeaderAddressName(nsMsgHeaderParser * const
0x049e7bf0, const char * 0x0012d5f0, const char * 0x049f2e00, char * *
0x0012d678) line 425 + 53 bytes
nsMsgHdr::GetAuthorCollationKey(nsMsgHdr * const 0x0434dda0, unsigned short * *
0x0012d710) line 630 + 30 bytes
nsMessage::GetAuthorCollationKey(nsMessage * const 0x045d0664, unsigned short *
* 0x0012d710) line 298 + 33 bytes
nsMsgMessageDataSource::createMessageSenderNode(nsIMessage * 0x045d0664, int 1,
nsIRDFNode * * 0x0012dc64) line 944 + 46 bytes
nsMsgMessageDataSource::createMessageNode(nsIMessage * 0x045d0664,
nsIRDFResource * 0x036dedd0, nsIRDFNode * * 0x0012dc64) line 875 + 18 bytes
nsMsgMessageDataSource::GetTarget(nsMsgMessageDataSource * const 0x036dd170,
nsIRDFResource * 0x045d0650, nsIRDFResource * 0x036dedd0, int 1, nsIRDFNode * *
0x0012dc64) line 288 + 25 bytes
CompositeDataSourceImpl::GetTarget(CompositeDataSourceImpl * const 0x033efb40,
nsIRDFResource * 0x045d0650, nsIRDFResource * 0x036dedd0, int 1, nsIRDFNode * *
0x0012dc64) line 708 + 28 bytes
XULSortServiceImpl::GetTarget(contentSortInfo * 0x049daf40, _sortStruct *
0x0012e098, int 1, int 0, int 1, nsIRDFNode * * 0x0012dc64, int & 0) line 1066 +
59 bytes
XULSortServiceImpl::GetResourceValue(contentSortInfo * 0x049daf40, _sortStruct *
0x0012e098, int 1, int 1, int 0, nsIRDFNode * * 0x0012dc64, int & 0) line 1188 +
31 bytes
XULSortServiceImpl::GetNodeValue(contentSortInfo * 0x049daf40, _sortStruct *
0x0012e098, int 1, int 0, nsIRDFNode * * 0x0012dc64, int & 0) line 1409 + 31
bytes
XULSortServiceImpl::InplaceSort(contentSortInfo * 0x049daf40, contentSortInfo *
0x049c2300, _sortStruct * 0x0012e098, int & 0) line 1612 + 45 bytes
testSortCallback(const void * 0x027b264c, const void * 0x027b1ee0, void *
0x0012e098) line 1683 + 21 bytes
NS_QuickSort(void * 0x027b1ee0, unsigned int 2098, unsigned int 4, int (const
void *, const void *, void *)* 0x01797340 testSortCallback(const void *, const
void *, void *), void * 0x0012e098) line 139 + 23 bytes
XULSortServiceImpl::SortTreeChildren(nsIContent * 0x036dcbc0, _sortStruct *
0x0012e098) line 1794 + 30 bytes
XULSortServiceImpl::DoSort(nsIDOMNode * 0x0340e744, const nsString &
{"http://home.netscape.com/NC-rdf#Sender"}, const nsString & {"ascending"}) line
2396 + 30 bytes
XULSortServiceImpl::Sort(XULSortServiceImpl * const 0x0339f810, nsIDOMNode *
0x0340e744, const char * 0x04526f70, const char * 0x03887130) line 2292 + 62
bytes
XPTC_InvokeByIndex(nsISupports * 0x0339f810, unsigned int 3, unsigned int 3,
nsXPTCVariant * 0x0012e4a0) line 139
nsXPCWrappedNativeClass::CallWrappedMethod(JSContext * 0x029ee6e0,
nsXPCWrappedNative * 0x04527420, const XPCNativeMemberDescriptor * 0x04527494,
nsXPCWrappedNativeClass::CallMode CALL_METHOD, unsigned int 3, long *
0x026a0900, long * 0x0012e644) line 898 + 43 bytes
WrappedNative_CallMethod(JSContext * 0x029ee6e0, JSObject * 0x026e9448, unsigned
int 3, long * 0x026a0900, long * 0x0012e644) line 200 + 34 bytes
js_Invoke(JSContext * 0x029ee6e0, unsigned int 3, unsigned int 0) line 679 + 26
bytes
js_Interpret(JSContext * 0x029ee6e0, long * 0x0012ef68) line 2457 + 15 bytes
js_Invoke(JSContext * 0x029ee6e0, unsigned int 1, unsigned int 2) line 695 + 13
bytes
js_InternalInvoke(JSContext * 0x029ee6e0, JSObject * 0x026ea840, long 40806496,
unsigned int 0, unsigned int 1, long * 0x0012f0f4, long * 0x0012f0a0) line 768 +
19 bytes
JS_CallFunctionValue(JSContext * 0x029ee6e0, JSObject * 0x026ea840, long
40806496, unsigned int 1, long * 0x0012f0f4, long * 0x0012f0a0) line 2791 + 31
bytes
nsJSContext::CallEventHandler(nsJSContext * const 0x029ee870, void * 0x026ea840,
void * 0x026ea860, unsigned int 1, void * 0x0012f0f4, int * 0x0012f0f0) line 563
+ 33 bytes
nsJSEventListener::HandleEvent(nsIDOMEvent * 0x03cb9634) line 128 + 57 bytes
nsEventListenerManager::HandleEventSubType(nsListenerStruct * 0x0340fa90,
nsIDOMEvent * 0x03cb9634, unsigned int 4, unsigned int 7) line 703 + 19 bytes
nsEventListenerManager::HandleEvent(nsIPresContext * 0x029ed050, nsEvent *
0x0012f628, nsIDOMEvent * * 0x0012f5f0, unsigned int 7, nsEventStatus *
0x0012f9d8) line 843 + 29 bytes
nsXULElement::HandleDOMEvent(nsXULElement * const 0x0340fbe0, nsIPresContext *
0x029ed050, nsEvent * 0x0012f628, nsIDOMEvent * * 0x0012f5f0, unsigned int 1,
nsEventStatus * 0x0012f9d8) line 3193
nsEventStateManager::CheckForAndDispatchClick(nsEventStateManager * const
0x03611390, nsIPresContext * 0x029ed050, nsMouseEvent * 0x0012facc,
nsEventStatus * 0x0012f9d8) line 1587 + 42 bytes
nsEventStateManager::PostHandleEvent(nsEventStateManager * const 0x03611390,
nsIPresContext * 0x029ed050, nsGUIEvent * 0x0012facc, nsIFrame * 0x0266ac78,
nsEventStatus * 0x0012f9d8, nsIView * 0x03650390) line 757 + 24 bytes
PresShell::HandleEvent(PresShell * const 0x02a1ddf4, nsIView * 0x03650390,
nsGUIEvent * 0x0012facc, nsEventStatus * 0x0012f9d8, int & 1) line 3218 + 43
bytes
nsView::HandleEvent(nsView * const 0x03650390, nsGUIEvent * 0x0012facc, unsigned
int 8, nsEventStatus * 0x0012f9d8, int & 1) line 811
nsView::HandleEvent(nsView * const 0x0364b690, nsGUIEvent * 0x0012facc, unsigned
int 8, nsEventStatus * 0x0012f9d8, int & 1) line 784
nsView::HandleEvent(nsView * const 0x02a1c570, nsGUIEvent * 0x0012facc, unsigned
int 28, nsEventStatus * 0x0012f9d8, int & 1) line 784
nsViewManager2::DispatchEvent(nsViewManager2 * const 0x02a1c750, nsGUIEvent *
0x0012facc, nsEventStatus * 0x0012f9d8) line 1348
Assignee | ||
Comment 1•25 years ago
|
||
It is crashing before creating a collation key and try to extract an address (do
that by converting to UTF-8). Adding cata to cc.
Scott, could you attach the message causing this crash?
Status: NEW → ASSIGNED
Assignee | ||
Comment 2•25 years ago
|
||
I got the data, I can reproduce it on my machine.
Assignee | ||
Comment 3•25 years ago
|
||
Reassign to cata.
Here is the data. It's converting from unicode to ISO-2022-JP.
input unicode
len=14 (byte len = 28)
03E733F0 43 00 4E 00 45 00 54 00 C.N.E.T.
03E733F8 20 00 4A 00 61 00 70 00 .J.a.p.
03E73400 61 00 6E 00 20 00 E8 7D a.n. .閘
03E73408 C6 96 40 5C CD CD CD CD ニ法\ヘヘヘヘ
output ISO-2022-JP
len=20 (byte len = 20)
03E73350 43 4E 45 54 20 4A 61 70 CNET Jap
03E73358 61 6E 20 1B 24 42 4A 54 an .$BJT
03E73360 3D 38 36 49 CD CD CD CD =86Iヘヘヘヘ
Assignee: nhotta → cata
Status: ASSIGNED → NEW
Naoki, is this output data the expected one, or the generated one - containing
the error?
Status: NEW → ASSIGNED
Target Milestone: --- → M15
I am unable to reproduce this in my test program. The conversion goes fine, with
the following result: "CNET Japan X$BJT=86IX(B", where X was the ESCape
character.
Ideas?
Assignee | ||
Comment 6•25 years ago
|
||
It was a caller's problem, I was passing a wrong buffer pointer.
This part is shared by other libmime but only this case encodes to ISO-2022-JP
(sender name contains japanese).
That was missed from my test cases (and in i18n smoke test).
Assignee: cata → nhotta
Status: ASSIGNED → NEW
Assignee | ||
Comment 7•25 years ago
|
||
fix checked in
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Comment 9•25 years ago
|
||
** Checked with 5/10/2000 Win32 build **
I have a bunch of messages in my mail folder with Japanese
sender names. With the above build, I can change the sort order
by clicking on the Sender tab to my heart's content and no crash
occurs.
Marking it verified as fixed.
Status: RESOLVED → VERIFIED
Updated•20 years ago
|
Product: MailNews → Core
Updated•16 years ago
|
Product: Core → MailNews Core
You need to log in
before you can comment on or make changes to this bug.
Description
•