Closed
Bug 74488
Opened 25 years ago
Closed 25 years ago
app freezes when doing |str1 = function(str1);|
Categories
(SeaMonkey :: MailNews: Message Display, defect)
Tracking
(Not tracked)
VERIFIED
FIXED
People
(Reporter: cls, Assigned: scc)
References
Details
(Keywords: smoketest)
Attachments
(2 files)
|
1.13 KB,
patch
|
Details | Diff | Splinter Review | |
|
1.26 KB,
patch
|
Details | Diff | Splinter Review |
The entire app hangs whenever I attempt to read mail after the strings landing
today. When I bring up mailnews, the psm dialog window which warns about a cert
name /hostname mismatch (unfortunately, normal) comes up and then the app
freezes before anything is drawn. I see this with my local builds as well as
the respun build in /latest/ from 16:54 today.
The debug build is still going but here's some info from the opt build:
(gdb) info threads
* 10 Thread 11149 0x402e7f30 in __poll (fds=0xbe9ffb08, nfds=1, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:45
9 Thread 11131 0x402cdc41 in __libc_nanosleep () from /lib/libc.so.6
8 Thread 11081 0x4025adcb in __sigsuspend (set=0xbedffbbc)
at ../sysdeps/unix/sysv/linux/sigsuspend.c:48
4 Thread 11067 0x4025adcb in __sigsuspend (set=0xbf5ffb9c)
at ../sysdeps/unix/sysv/linux/sigsuspend.c:48
3 Thread 11066 0x402e7f30 in __poll (fds=0xbf7ffcb8, nfds=3, timeout=35000)
at ../sysdeps/unix/sysv/linux/poll.c:45
2 Thread 11024 (initial thread) 0x400e8502 in
nsPromiseCSubstring::GetReadableFragment () from
/usr/cls/moz/main/obj-opt/dist/bin/libxpcom.so
1 Thread 11065 (manager thread) 0x402e7f30 in __poll (fds=0x8131610,
nfds=1, timeout=2000) at ../sysdeps/unix/sysv/linux/poll.c:45
(gdb) bt
#0 0x402e7f30 in __poll (fds=0xbe9ffb08, nfds=1, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:45
#1 0x401b1b2a in PR_Poll ()
from /usr/cls/moz/main/obj-opt/dist/bin/libnspr4.so
#2 0x409a96b3 in nsPSMShimSelect ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libpsmglue.so
#3 0x409c94b9 in CMT_EventLoop ()
from /usr/cls/moz/main/obj-opt/dist/bin/libcmt.so
#4 0x409ad0b6 in CARTMAN_UIEventLoop ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libpsmglue.so
#5 0x401b2bed in PR_Select ()
from /usr/cls/moz/main/obj-opt/dist/bin/libnspr4.so
#6 0x401c7b85 in pthread_start_thread (arg=0xbe9ffe40) at manager.c:241
(gdb) thread 2
[Switching to thread 2 (Thread 11024 (initial thread))]
#0 0x400e8502 in nsPromiseCSubstring::GetReadableFragment ()
from /usr/cls/moz/main/obj-opt/dist/bin/libxpcom.so
(gdb) bt
#0 0x400e8502 in nsPromiseCSubstring::GetReadableFragment ()
from /usr/cls/moz/main/obj-opt/dist/bin/libxpcom.so
#1 0x400e7ce1 in nsPromiseCConcatenation::GetReadableFragment ()
from /usr/cls/moz/main/obj-opt/dist/bin/libxpcom.so
#2 0x400e3a4d in nsACString::do_AssignFromReadable ()
from /usr/cls/moz/main/obj-opt/dist/bin/libxpcom.so
#3 0x400e3559 in nsACString::AssignFromReadable ()
from /usr/cls/moz/main/obj-opt/dist/bin/libxpcom.so
#4 0x408769a4 in nsHTTPChannel::SetReferrer ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libnecko.so
#5 0x40990c81 in nsDocShell::DoURILoad ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libdocshell.so
#6 0x4098fe5b in nsDocShell::InternalLoad ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libdocshell.so
#7 0x40988a90 in nsDocShell::LoadURI ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libdocshell.so
#8 0x40db35c0 in nsHTMLFrameInnerFrame::DoLoadURL ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#9 0x40db379e in nsHTMLFrameInnerFrame::Reflow ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#10 0x40d6a99f in nsContainerFrame::ReflowChild ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#11 0x40db0133 in nsHTMLFrameOuterFrame::Reflow ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#12 0x40d6a99f in nsContainerFrame::ReflowChild ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#13 0x40db514b in nsHTMLFramesetFrame::ReflowPlaceChild ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#14 0x40db6103 in nsHTMLFramesetFrame::Reflow ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#15 0x40d67b73 in nsBlockReflowContext::DoReflowBlock ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#16 0x40d67646 in nsBlockReflowContext::ReflowBlock ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#17 0x40d62b3c in nsBlockFrame::ReflowBlockFrame ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#18 0x40d61a79 in nsBlockFrame::ReflowLine ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#19 0x40d61656 in nsBlockFrame::ReflowDirtyLines ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#20 0x40d601df in nsBlockFrame::Reflow ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#21 0x40d6a99f in nsContainerFrame::ReflowChild ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#22 0x40d776e6 in CanvasFrame::Reflow ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#23 0x40d6a99f in nsContainerFrame::ReflowChild ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#24 0x40daca0a in ViewportFrame::Reflow ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#25 0x40d94caf in PresShell::InitialReflow ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgklayout.so
#26 0x40a98283 in HTMLContentSink::StartLayout ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgkcontent.so
#27 0x40a9736e in HTMLContentSink::CloseFrameset ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libgkcontent.so
#28 0x408ed26d in CNavDTD::CloseFrameset ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libhtmlpars.so
#29 0x408ed905 in CNavDTD::CloseContainer ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libhtmlpars.so
#30 0x408ed9e4 in CNavDTD::CloseContainersTo ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libhtmlpars.so
#31 0x408edd5a in CNavDTD::CloseContainersTo ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libhtmlpars.so
#32 0x408eb8ab in CNavDTD::HandleEndToken ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libhtmlpars.so
#33 0x408e992d in CNavDTD::HandleToken ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libhtmlpars.so
#34 0x408e8cd6 in CNavDTD::BuildModel ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libhtmlpars.so
#35 0x408fd64b in nsParser::BuildModel ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libhtmlpars.so
#36 0x408fd46e in nsParser::ResumeParse ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libhtmlpars.so
#37 0x408fde12 in nsParser::OnDataAvailable ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libhtmlpars.so
#38 0x409404d2 in nsDocumentOpenInfo::OnDataAvailable ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/liburiloader.so
#39 0x4087c670 in nsHTTPFinalListener::OnDataAvailable ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libnecko.so
#40 0x4087b380 in nsHTTPServerListener::OnDataAvailable ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libnecko.so
#41 0x40832f7e in nsOnDataAvailableEvent::HandleEvent ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libnecko.so
#42 0x40832242 in nsStreamObserverEvent::HandlePLEvent ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libnecko.so
#43 0x400c3909 in PL_HandleEvent ()
from /usr/cls/moz/main/obj-opt/dist/bin/libxpcom.so
#44 0x400c3d56 in PL_ProcessEventsBeforeID ()
from /usr/cls/moz/main/obj-opt/dist/bin/libxpcom.so
#45 0x404e2079 in processQueue ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libwidget_gtk.so
#46 0x4009bc92 in nsVoidArray::EnumerateForwards ()
from /usr/cls/moz/main/obj-opt/dist/bin/libxpcom.so
#47 0x404e20b7 in nsAppShell::ProcessBeforeID ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libwidget_gtk.so
#48 0x404ea6a5 in handle_gdk_event ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libwidget_gtk.so
#49 0x4064b4db in ?? () from /usr/lib/libgdk-1.2.so.0
#50 0x40678186 in g_main_dispatch () from /usr/lib/libglib-1.2.so.0
#51 0x40678751 in g_main_iterate () from /usr/lib/libglib-1.2.so.0
#52 0x406788f1 in g_main_run () from /usr/lib/libglib-1.2.so.0
#53 0x405a05b9 in ?? () from /usr/lib/libgtk-1.2.so.0
#54 0x404e1dca in nsAppShell::Run ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libwidget_gtk.so
#55 0x403a1f00 in nsAppShellService::Run ()
from /usr/cls/moz/main/obj-opt/dist/bin/components/libnsappshell.so
#56 0x804d9d4 in main1 ()
#57 0x804e39c in main ()
#58 0x402549cb in __libc_start_main (main=0x804e23c <main>, argc=1,
argv=0xbffff7e4, init=0x804a25c <_init>, fini=0x804ff00 <_fini>,
rtld_fini=0x4000aea0, stack_end=0xbffff7dc)
at ../sysdeps/generic/libc-start.c:92
(gdb)
Severity: normal → blocker
Keywords: smoketest
Comment 2•25 years ago
|
||
fwiw, this isn't a problem with my local linux build [clobber build from
8:15pm-ish today].
Are you testing the case where the "don't be stupid" psm warning pops up? After
testing on a different machine that has a profile that doesn't log into the
server automatically, I was able to use my accts that do not cause that dialog
to pop up. When I try to access that account, the app locks up after the dialog
frame is displayed.
(gdb) info threads
* 113 Thread 4418 0x2ae03c41 in __libc_nanosleep () from /lib/libc.so.6
111 Thread 4415 0x2ad90dcb in __sigsuspend (set=0x71fffb5c)
at ../sysdeps/unix/sysv/linux/sigsuspend.c:48
94 Thread 4394 0x2ae03c41 in __libc_nanosleep () from /lib/libc.so.6
92 Thread 4391 0x2ae03c41 in __libc_nanosleep () from /lib/libc.so.6
59 Thread 4328 0x2ae1df30 in __poll (fds=0x787ffae8, nfds=1, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:45
4 Thread 4259 0x2ad90dcb in __sigsuspend (set=0x7f5ffb5c)
at ../sysdeps/unix/sysv/linux/sigsuspend.c:48
3 Thread 4258 0x2ae1df30 in __poll (fds=0x8655470, nfds=6, timeout=35000)
at ../sysdeps/unix/sysv/linux/poll.c:45
2 Thread 4255 (initial thread) 0x2ab5c1c8 in ?? ()
from /usr/cls/moz/main/obj-opt-g/dist/bin/libxpcom.so
1 Thread 4257 (manager thread) 0x2ae1df30 in __poll (fds=0x82c28e8, nfds=1,
timeout=2000) at ../sysdeps/unix/sysv/linux/poll.c:45
Current language: auto; currently c
gdb) thread 2
[Switching to thread 2 (Thread 4255 (initial thread))]
(gdb) bt
#0 0x2ab5c1c8 in ?? () from /usr/cls/moz/main/obj-opt-g/dist/bin/libxpcom.so
#1 0x2abf1e75 in nsReadingIterator<char>::normalize_forward (this=0x7fffcb80)
at ../../dist/include/nsStringIterator.h:364
#2 0x2abf1970 in nsReadingIterator<char>::advance (this=0x7fffcb80, n=22)
at ../../dist/include/nsStringIterator.h:175
#3 0x2abf2159 in nsCharSourceTraits<nsReadingIterator<char> >::advance (
s=@0x7fffcb80, n=59) at ../../dist/include/nsCharTraits.h:505
#4 0x2abf1d6c in nsWritingIterator<char> & copy_string<nsReadingIterator<char>,
nsWritingIterator<char> > (first=@0x7fffcb80, last=@0x7fffcb6c,
result=@0x7fffcb58) at ../../dist/include/nsAlgorithm.h:78
#5 0x2abd34a1 in nsACString::do_AssignFromReadable (this=0x7fffccac,
aReadable=@0x7fffcc84) at ../../../mozilla/string/src/nsAString.cpp:686
#6 0x2abd3292 in nsACString::AssignFromReadable (this=0x7fffccac,
rhs=@0x7fffcc84) at ../../../mozilla/string/src/nsAString.cpp:629
#7 0x2abd4a65 in nsACString::Assign (this=0x7fffccac, aReadable=@0x7fffcc84)
at ../../dist/include/nsAString.h:408
#8 0x2abdec3d in nsCAutoString::operator= (this=0x7fffccac,
aReadable=@0x7fffcc84) at ../../../mozilla/string/obsolete/nsString.h:497
#9 0x2b5ad36a in nsHTTPChannel::SetReferrer ()
at ../../../../mozilla/netwerk/streamconv/converters/nsIndexedToHTML.cpp:254
#10 0x2aebf674 in nsDocShell::DoURILoad ()
at ../../../mozilla/docshell/build/nsDocShellModule.cpp:51
#11 0x2aebe4f1 in nsDocShell::InternalLoad ()
at ../../../mozilla/docshell/build/nsDocShellModule.cpp:51
#12 0x2aeb2b41 in nsDocShell::LoadURI ()
at ../../../mozilla/docshell/build/nsDocShellModule.cpp:51
#13 0x2b703c72 in nsHTMLFrameInnerFrame::DoLoadURL ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#14 0x2b703e7d in nsHTMLFrameInnerFrame::Reflow ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#15 0x2b6a1215 in nsContainerFrame::ReflowChild ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#16 0x2b6ff1f4 in nsHTMLFrameOuterFrame::Reflow ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#17 0x2b6a1215 in nsContainerFrame::ReflowChild ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#18 0x2b705f4e in nsHTMLFramesetFrame::ReflowPlaceChild ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#19 0x2b707562 in nsHTMLFramesetFrame::Reflow ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#20 0x2b69d172 in nsBlockReflowContext::DoReflowBlock ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#21 0x2b69cb8a in nsBlockReflowContext::ReflowBlock ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#22 0x2b69622d in nsBlockFrame::ReflowBlockFrame ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#23 0x2b694a70 in nsBlockFrame::ReflowLine ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#24 0x2b69459e in nsBlockFrame::ReflowDirtyLines ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#25 0x2b6926e8 in nsBlockFrame::Reflow ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#26 0x2b6a1215 in nsContainerFrame::ReflowChild ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#27 0x2b6b506a in CanvasFrame::Reflow ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#28 0x2b6a1215 in nsContainerFrame::ReflowChild ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#29 0x2b6fa9c3 in ViewportFrame::Reflow ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#30 0x2b6db215 in PresShell::InitialReflow ()
at ../../../mozilla/layout/build/nsLayoutModule.cpp:103
#31 0x2b123ff2 in ?? ()
from /usr/cls/moz/main/obj-opt-g/dist/bin/components/libgkcontent.so
#32 0x2b122780 in ?? ()
from /usr/cls/moz/main/obj-opt-g/dist/bin/components/libgkcontent.so
#33 0x2c56ffb1 in CNavDTD::CloseFrameset ()
at ../../../mozilla/htmlparser/src/nsHTMLTokenizer.cpp:76
#34 0x2c57075d in nsHTMLTokenizer::ScanDocStructure (this=0x2de3f130,
aFinalChunk=774154728)
at ../../../mozilla/htmlparser/src/nsHTMLTokenizer.cpp:366
#35 0x2c570880 in CNavDTD::CloseContainersTo ()
at ../../../mozilla/htmlparser/src/nsHTMLTokenizer.cpp:411
#36 0x2c570c60 in CNavDTD::CloseContainersTo ()
at ../../../mozilla/htmlparser/src/nsHTMLTokenizer.cpp:537
#37 0x2c56dc73 in nsDTDContext::RegisterEntity (this=0x2de3f130,
aName=@0x2de3c600, aValue=@0x0)
at ../../../mozilla/htmlparser/src/nsDTDUtils.cpp:452
#38 0x2c56b3ed in CNavDTD::HandleToken ()
from /usr/cls/moz/main/obj-opt-g/dist/bin/components/libhtmlpars.so
#39 0x2c56a681 in CNavDTD::BuildModel ()
from /usr/cls/moz/main/obj-opt-g/dist/bin/components/libhtmlpars.so
#40 0x2c580492 in CNavDTD::AddLeaf (this=0x2d8fe840, aNode=0x0)
at ../../../mozilla/htmlparser/src/CNavDTD.cpp:3794
#41 0x2c580209 in nsParser::ResumeParse ()
at ../../../mozilla/htmlparser/src/CNavDTD.cpp:3709
#42 0x2c580ee6 in nsParser::OnDataAvailable ()
at ../../../mozilla/htmlparser/src/COtherElements.h:2170
#43 0x2c4cdf33 in nsDocumentOpenInfo::OnDataAvailable ()
at ../../../mozilla/uriloader/build/nsURILoaderModule.cpp:64
#44 0x2b5b5795 in nsHTTPFinalListener::OnDataAvailable ()
at ../../../../mozilla/netwerk/cache/mgr/nsReplacementPolicy.cpp:773
#45 0x2b5b3d2c in InterceptStreamListener::Read (this=0x2d8f8bf8,
buf=0x2ce9db10 "@Ï_+\a", count=140573312, aActualBytes=0x2de49314)
at ../../../../mozilla/netwerk/cache/mgr/nsCachedNetData.cpp:1236
#46 0x2b54ef5d in nsOnDataAvailableEvent::HandleEvent ()
at ../../../mozilla/netwerk/build/nsNetModule.cpp:894
#47 0x2b54e124 in nsStreamObserverEvent::HandlePLEvent ()
at ../../../mozilla/netwerk/build/nsNetModule.cpp:894
#48 0x2abab5a3 in PL_HandleEvent (self=0x2dc725c0)
at ../../../mozilla/xpcom/threads/plevent.c:588
#49 0x2abab44c in PL_ProcessPendingEvents (self=0x8071920)
at ../../../mozilla/xpcom/threads/plevent.c:518
#50 0x2abac95c in nsEventQueueImpl::ProcessPendingEvents (this=0x80718f8)
at ../../../mozilla/xpcom/threads/nsEventQueue.cpp:361
#51 0x2bc3f563 in event_processor_callback ()
from /usr/cls/moz/main/obj-opt-g/dist/bin/components/libwidget_gtk.so
#52 0x2bc3f215 in our_gdk_io_invoke ()
from /usr/cls/moz/main/obj-opt-g/dist/bin/components/libwidget_gtk.so
#53 0x2bdf0aca in g_io_unix_dispatch () from /usr/lib/libglib-1.2.so.0
#54 0x2bdf2186 in g_main_dispatch () from /usr/lib/libglib-1.2.so.0
#55 0x2bdf2751 in g_main_iterate () from /usr/lib/libglib-1.2.so.0
#56 0x2bdf28f1 in g_main_run () from /usr/lib/libglib-1.2.so.0
#57 0x2bd175b9 in gtk_main () from /usr/lib/libgtk-1.2.so.0
---Type <return> to continue, or q <return> to quit---
#58 0x2bc3fc56 in nsAppShell::Run ()
from /usr/cls/moz/main/obj-opt-g/dist/bin/components/libwidget_gtk.so
#59 0x2c68380e in nsAppShellService::Run ()
from /usr/cls/moz/main/obj-opt-g/dist/bin/components/libnsappshell.so
#60 0x8051500 in main1 (argc=1, argv=0x7ffff604, nativeApp=0x0)
at ../../../mozilla/xpfe/bootstrap/nsAppRunner.cpp:1021
#61 0x8052272 in main (argc=1, argv=0x7ffff604)
at ../../../mozilla/xpfe/bootstrap/nsAppRunner.cpp:1316
(gdb)
Comment 4•25 years ago
|
||
no, i don't get that dialog. sorry!
Comment 5•25 years ago
|
||
ack, i meant to say: i didn't build w/psm...
Ok, with jag's help, we tracked the problem down to
|nsHTTPChannel::SetReferrer|, in which we are basically doing, |str1 =
function(str1);|. This seems like bad form to me but jag insists that it's
valid if we supported string sharing (or some such). Here's the quick fix but
we should really either make this work or let people know not to do it.
Index: netwerk/protocol/http/src/nsHTTPChannel.cpp
===================================================================
RCS file: /cvsroot/mozilla/netwerk/protocol/http/src/nsHTTPChannel.cpp,v
retrieving revision 1.280
diff -u -r1.280 nsHTTPChannel.cpp
--- nsHTTPChannel.cpp 2001/04/02 01:20:40 1.280
+++ nsHTTPChannel.cpp 2001/04/03 06:41:30
@@ -3302,18 +3302,20 @@
referrer->GetSpec(getter_Copies(spec));
if (spec && (referrerLevel <= mHandler->ReferrerLevel())) {
nsCAutoString ref(spec.get());
+ nsCAutoString tmpRef;
nsXPIDLCString prehost;
referrer->GetPreHost(getter_Copies(prehost));
if (prehost.get()) {
PRUint32 prehostLocation = ref.Find(prehost.get(), PR_TRUE);
PRInt32 remainingStart = prehostLocation +
PL_strlen(prehost.get()) + 1; // 1 for @
- ref = Substring(NS_READABLE_CAST(char, ref),
+ tmpRef = Substring(NS_READABLE_CAST(char, ref),
(PRUint32) 0,
(PRUint32) prehostLocation) +
Substring(NS_READABLE_CAST(char, ref),
(PRUint32) remainingStart,
(PRUint32) ref.Length()-remainingStart);
+ ref = tmpRef;
}
if ((referrerLevel == nsIHTTPChannel::REFERRER_NON_HTTP) ||
Summary: app freezes when bringing up mailnews window → app freezes when doing |str1 = function(str1);|
Comment 7•25 years ago
|
||
Comment 8•25 years ago
|
||
r/sr=darin (nice work)
Comment 9•25 years ago
|
||
Comment 10•25 years ago
|
||
So I'm not sure why cls' build doesn't like:
ref = Substring(NS_READABLE_CAST(char, ref),
(PRUint32) 0,
(PRUint32) prehostLocation) +
Substring(NS_READABLE_CAST(char, ref),
(PRUint32) remainingStart,
(PRUint32) ref.Length()-remainingStart);
When assigning into |ref|, it should detect that those Substrings are on |ref|
and thus make a copy of the promised concatenation, before clearing |ref| to
copy into it.
Anyway, sr=darin (given in #mozilla) on the last patch, so could someone r=?
Comment 11•25 years ago
|
||
Fix is good, can read and send mail now.
Freshly pulled CVS tree works now on Windows 2000.
Comment 13•25 years ago
|
||
got r=scc, checked in sometime this morning before the tree opened. Marking this
bug fixed.
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
*** Bug 74552 has been marked as a duplicate of this bug. ***
Updated•21 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•