Closed
Bug 421768
Opened 16 years ago
Closed 15 years ago
Camino hung while reloading webpage(s), lots of memory consumed
Categories
(Camino Graveyard :: General, defect)
Tracking
(Not tracked)
RESOLVED
INCOMPLETE
People
(Reporter: acmiddleton, Unassigned)
References
()
Details
Attachments
(1 file, 1 obsolete file)
32.15 KB,
text/plain
|
Details |
User-Agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en; rv:1.8.1.12pre) Gecko/20080118 Camino/1.6b2 (like Firefox/2.0.0.12pre) Build Identifier: Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en; rv:1.8.1.12pre) Gecko/20080118 Camino/1.6b2 (like Firefox/2.0.0.12pre) My browser hung after several days of multiple tabs being open, though not repeatable I believe I've seen similar behavior several times now. It appears that www.nytimes.com and www.startribune are trying to load, but I get the spinning ball cursor and Activity Monitor says Camino is hung. - think I've seen this 2-3 times before, but takes weeks to recur - 32 open tabs - during hang, 8Mbytes free memory, Activity Monitor says 44Mbyes consumed, but after Camino killed, 440Mbytes free - no log messages - I'm running 10.3.9 Mac OSX Reproducible: Sometimes Steps to Reproduce: 1. Open a bunch of tabs, iTunes, Mail, occasionally Microsoft Office X. 2. Wait a few days, display not system goes to sleep (no screen saver, iTunes running in background) 3. Last user action was to reload www.startribune.com (in this case). Actual Results: Spinning ball cursor. www.startribune.com and www.nytimes.com activity tab shown as loading. Expected Results: Normal browser. (Activity Monitor Camino Sample cut & paste when hung, formatting got a bit munged) Analysis of sampling pid 6687 every 10.000000 milliseconds Call graph: 193 Thread_110b 193 start 193 start 193 NSApplicationMain 193 -[NSApplication run] 193 0xd809e00 193 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] 193 _DPSNextEvent 193 BlockUntilNextEventMatchingListInMode 193 ReceiveNextEventCommon 193 RunCurrentEventLoopInMode 193 CFRunLoopRunSpecific 193 __CFRunLoopRun 193 __CFRunLoopDoSources0 193 PL_ProcessPendingEvents 193 PL_HandleEvent 193 handleTimerEvent(TimerEventType*) 193 nsTimerImpl::Fire() 193 nsJSContext::Notify(nsITimer*) 193 JS_GC 193 js_GC 193 JS_DHashTableEnumerate 193 js_MarkGCThing 193 js_MarkAtom 192 js_Mark 191 GetIdentityObject(JSContext*, JSObject*) 188 xpc_MarkForValidWrapper(JSContext*, XPCWrappedNative*, void*) 183 js_MarkAtom 182 js_Mark 182 XPC_WN_GetterSetter(JSContext*, JSObject*, unsigned int, long*, long*) 182 non-virtual thunk to nsXPCComponents::CanSetProperty(nsID const*, unsigned short const*, char**) 181 js_MarkAtom 180 js_MarkAtom 178 js_MarkAtom 176 js_MarkAtom 173 js_MarkAtom 168 js_MarkAtom 99 js_Mark 97 GetIdentityObject(JSContext*, JSObject*) 96 nsDOMGCParticipantSH::Mark(nsIXPConnectWrappedNative*, JSContext*, JSObject*, void*, unsigned int*) 96 nsDOMClassInfo::MarkReachablePreservedWrappers(nsIDOMGCParticipant*, JSContext*, void*) 89 js_MarkAtom 47 js_MarkAtom 28 js_MarkAtom 15 js_Mark 15 GetIdentityObject(JSContext*, JSObject*) 13 nsDOMGCParticipantSH::Mark(nsIXPConnectWrappedNative*, JSContext*, JSObject*, void*, unsigned int*) 12 nsDOMClassInfo::MarkReachablePreservedWrappers(nsIDOMGCParticipant*, JSContext*, void*) 11 js_MarkAtom 9 js_MarkAtom 2 js_Mark 2 GetIdentityObject(JSContext*, JSObject*) 2 xpc_MarkForValidWrapper(JSContext*, XPCWrappedNative*, void*) 2 xpc_MarkForValidWrapper(JSContext*, XPCWrappedNative*, void*) 1 nsGenericElement::GetSCCIndex() 1 nsCOMPtr_base::assign_from_qi(nsQueryInterface, nsID const&) 1 nsQueryInterface::operator()(nsID const&, void**) const 1 nsHTMLObjectElement::QueryInterface(nsID const&, void**) 1 nsGenericHTMLFormElement::QueryInterface(nsID const&, void**) 1 nsGenericHTMLFormElement::QueryInterface(nsID const&, void**) 1 nsCOMPtr_base::assign_from_qi(nsQueryInterface, nsID const&) 1 nsQueryInterface::operator()(nsID const&, void**) const 1 nsQueryInterface::operator()(nsID const&, void**) const 2 GetIdentityObject(JSContext*, JSObject*) 13 js_MarkAtom 12 js_MarkAtom 7 js_Mark 5 GetIdentityObject(JSContext*, JSObject*) 4 xpc_MarkForValidWrapper(JSContext*, XPCWrappedNative*, void*) 4 js_MarkAtom 2 js_Mark 2 js_MarkScopeProperty 1 js_MarkAtom 1 js_Mark 1 js_MarkScopeProperty 1 js_MarkId 1 js_MarkId 1 js_MarkScopeProperty 1 js_MarkAtom 1 js_MarkAtom 1 js_Mark 1 js_SetCallVariable 1 js_MarkGCThing 1 js_GetGCThingFlags 1 js_GetGCThingFlags 1 GetIdentityObject(JSContext*, JSObject*) 1 js_SetCallVariable 1 js_MarkScript 1 js_MarkScript 1 xpc_MarkForValidWrapper(JSContext*, XPCWrappedNative*, void*) 1 xpc_MarkForValidWrapper(JSContext*, XPCWrappedNative*, void*) 39 js_Mark 38 GetIdentityObject(JSContext*, JSObject*) 36 xpc_MarkForValidWrapper(JSContext*, XPCWrappedNative*, void*) 36 js_MarkAtom 34 js_MarkAtom 34 js_MarkAtom 30 js_Mark 30 js_SetCallVariable 30 js_MarkScript 21 js_MarkScript 9 js_MarkAtom 9 js_MarkAtom 7 js_Mark 7 js_SetCallVariable 7 js_MarkScript 7 js_MarkScript 2 js_MarkAtom 4 js_MarkAtom 2 js_MarkAtom 2 nsDOMGCParticipantSH::Mark(nsIXPConnectWrappedNative*, JSContext*, JSObject*, void*, unsigned int*) 2 nsDOMClassInfo::MarkReachablePreservedWrappers(nsIDOMGCParticipant*, JSContext*, void*) 2 nsGenericElement::GetSCCIndex() 2 nsGenericElement::GetSCCIndex() 1 js_SetCallVariable 1 js_MarkScript 1 js_MarkScript 3 js_MarkAtom 3 nsDOMClassInfo::MarkReachablePreservedWrappers(nsIDOMGCParticipant*, JSContext*, void*) 2 nsMarkedJSFunctionHolder_base::Set(nsISupports*, nsIDOMGCParticipant*) 2 nsMarkedJSFunctionHolder_base::Set(nsISupports*, nsIDOMGCParticipant*) 1 0x9dedcc 1 0x9dedcc 1 nsGenericElement::GetSCCIndex() 1 nsGenericElement::GetSCCIndex() 1 xpc_MarkForValidWrapper(JSContext*, XPCWrappedNative*, void*) 1 js_MarkAtom 1 js_MarkAtom 1 js_Mark 1 js_SetCallVariable 1 js_MarkGCThing 1 js_GetGCThingFlags 1 js_GetGCThingFlags 2 js_SetCallVariable 2 js_MarkScript 2 js_MarkScript 68 js_MarkAtom 35 js_MarkAtom 25 js_MarkAtom 8 js_Mark 8 js_SetCallVariable 8 js_MarkScript 8 js_MarkScript 2 js_MarkAtom 1 js_MarkAtom 1 js_MarkAtom 1 js_Mark 1 js_SetCallVariable 1 js_MarkScript 1 js_MarkScript 21 js_MarkAtom 12 js_Mark 12 js_SetCallVariable 11 js_MarkScript 9 js_MarkScript 2 js_MarkAtom 2 js_MarkAtom 2 js_Mark 2 js_FreeRegExpStatics 2 js_FreeRegExpStatics 1 js_MarkGCThing 1 js_GetGCThingFlags 1 js_GetGCThingFlags 1 js_MarkAtom 4 js_Mark 4 js_SetCallVariable 4 js_MarkScript 3 js_MarkAtom 3 js_MarkAtom 2 js_Mark 2 js_SetCallVariable 2 js_MarkScript 2 js_MarkScript 1 js_MarkAtom 1 js_MarkScript 1 js_GetGCThingFlags 1 js_GetGCThingFlags 2 js_Mark 2 js_SetCallVariable 2 js_MarkScript 2 js_MarkScript 1 js_MarkAtom 1 js_Mark 1 js_SetCallVariable 1 js_MarkScript 1 js_MarkScript 1 js_MarkAtom 2 js_MarkAtom 1 js_MarkAtom 1 non-virtual thunk to nsXPCComponents::CanSetProperty(nsID const*, unsigned short const*, char**) 1 js_MarkAtom 5 xpc_MarkForValidWrapper(JSContext*, XPCWrappedNative*, void*) 2 GetIdentityObject(JSContext*, JSObject*) 1 nsDOMGCParticipantSH::Mark(nsIXPConnectWrappedNative*, JSContext*, JSObject*, void*, unsigned int*) 1 nsCOMPtr_base::assign_from_qi(nsQueryInterface, nsID const&) 1 nsQueryInterface::operator()(nsID const&, void**) const 1 nsQueryInterface::operator()(nsID const&, void**) const 1 XPC_WN_GetterSetter(JSContext*, JSObject*, unsigned int, long*, long*) 1 XPC_WN_GetterSetter(JSContext*, JSObject*, unsigned int, long*, long*) 1 js_MarkAtom 193 Thread_1203 193 _pthread_body 193 PR_Select 193 nsThread::Main(void*) 193 nsSocketTransportService::Run() 193 nsSocketTransportService::Poll(unsigned int*) 193 PR_OpenDir 193 poll 193 select 193 select 193 Thread_1303 193 _pthread_body 193 forkThreadForFunction 193 -[NSUIHeartBeat _heartBeatThread:] 159 +[NSThread sleepUntilDate:] 159 syscall_thread_switch 159 syscall_thread_switch 27 -[NSProgressIndicator heartBeat:] 19 CGSFlushSurface 19 _CGSFlushSurfaceInline 19 mach_msg 19 mach_msg_trap 19 mach_msg_trap 8 -[NSImage compositeToPoint:operation:] 8 -[NSImage compositeToPoint:fromRect:operation:] 8 -[NSImage _composite:delta:fromRect:toPoint:] 8 -[NSBitmapImageRep _drawFromRect:toRect:operation:alpha:compositing:flipped:ignoreContext:] 6 CGContextDrawImage 6 ripc_DrawImage 6 ripc_DrawImageObject 5 ripl_BltImage 5 ripd_Lock 5 CGSDeviceLock 5 _CGSLockWindow 5 _CGSSynchronizeWindow 5 _CGSSynchronizeWindowBackingStore 5 mach_msg 5 mach_msg_trap 5 mach_msg_trap 1 0x90c5f46c 1 0x90c5f46c 1 0x9745e730 1 0x9745e730 1 CGGStateSetCompositeOperation 1 renderingStateCopy 1 renderingStateCopy 2 CFArrayAppendValue 2 _CFArrayReplaceValues 1 -[NSObject retain] 1 0x90b493a0 1 0x90b493a0 1 _CFArrayReplaceValues 2 NSPopAutoreleasePool 1 NSPopAutoreleasePool 1 objc_msgSend 1 objc_msgSend 2 _NSRemoveHandler2 2 _NSRemoveHandler2 1 +[NSDate dateWithTimeIntervalSinceNow:] 1 -[NSCFDate initWithTimeIntervalSinceReferenceDate:] 1 _internal_object_dispose 1 free 1 free 193 Thread_1403 193 _pthread_body 193 PR_Select 193 nsThread::Main(void*) 193 TimerThread::Run() 193 PR_WaitCondVar 193 PR_Unlock 193 _pthread_cond_wait 193 semaphore_timedwait_signal_trap 193 semaphore_timedwait_signal_trap 193 Thread_1503 193 _pthread_body 193 PR_Select 193 nsSSLThread::Run() 193 PR_WaitCondVar 193 _pthread_cond_wait 193 semaphore_wait_signal_trap 193 semaphore_wait_signal_trap 193 Thread_1603 193 _pthread_body 193 PR_Select 193 nsCertVerificationThread::Run() 193 PR_WaitCondVar 193 _pthread_cond_wait 193 semaphore_wait_signal_trap 193 semaphore_wait_signal_trap 193 Thread_1703 193 _pthread_body 193 JVM_RaiseSignal 193 JNI_CreateJavaVM_Impl 193 JNI_CreateJavaVM_Impl 193 mach_msg 193 mach_msg_trap 193 mach_msg_trap 193 Thread_1803 193 _pthread_body 193 JVM_RaiseSignal 193 JVM_GetInterfaceVersion 193 JVM_GetMethodIxModifiers 193 __divdi3 193 JVM_GetClassAccessFlags 193 mach_msg 193 mach_msg_trap 193 mach_msg_trap 193 Thread_1903 193 _pthread_body 193 JVM_RaiseSignal 193 JVM_FindClassFromClass 193 JVM_SetPrimitiveField 193 JVM_Interrupt 193 JVM_Close 193 JVM_GetCPClassNameUTF 193 JVM_GetCPMethodClassNameUTF 193 0xf82116c 193 0xf823fb0 193 0xf823fb0 193 0xf82a580 193 JVM_MonitorWait 193 __cmpdi2 193 _mh_dylib_header 193 JVM_GetClassAccessFlags 193 mach_msg 193 mach_msg_trap 193 mach_msg_trap 193 Thread_1a03 193 _pthread_body 193 JVM_RaiseSignal 193 JVM_FindClassFromClass 193 JVM_SetPrimitiveField 193 JVM_Interrupt 193 JVM_Close 193 JVM_GetCPClassNameUTF 193 JVM_GetCPMethodClassNameUTF 193 0xf82116c 193 0xf823ec0 193 0xf823ec0 193 0xf823fb0 193 0xf82a580 193 JVM_MonitorWait 193 __cmpdi2 193 _mh_dylib_header 193 JVM_GetClassAccessFlags 193 mach_msg 193 mach_msg_trap 193 mach_msg_trap 193 Thread_1b03 193 _pthread_body 193 JVM_RaiseSignal 193 JVM_GetCPMethodSignatureUTF 193 JVM_GetCPMethodSignatureUTF 193 JVM_GetClassAccessFlags 193 mach_msg 193 mach_msg_trap 193 mach_msg_trap 193 Thread_1c03 193 _pthread_body 193 JVM_RaiseSignal 193 JVM_FindClassFromClass 193 JVM_RaiseSignal 193 JVM_RaiseSignal 193 semaphore_wait_trap 193 semaphore_wait_trap 193 Thread_1d03 193 _pthread_body 193 JVM_RaiseSignal 193 JVM_FindClassFromClass 193 JVM_SocketAvailable 193 JVM_GetFieldIxModifiers 193 __divdi3 193 JVM_GetClassAccessFlags 193 mach_msg 193 mach_msg_trap 193 mach_msg_trap 193 Thread_1e03 193 _pthread_body 193 JVM_RaiseSignal 193 JVM_FindClassFromClass 193 JVM_SetPrimitiveField 193 JVM_Interrupt 193 JVM_Close 193 JVM_GetCPClassNameUTF 193 JVM_GetCPMethodClassNameUTF 193 0xf82116c 193 0xf823fb0 193 0xf82a580 193 JVM_MonitorWait 193 __cmpdi2 193 _mh_dylib_header 193 JVM_GetClassAccessFlags 193 mach_msg 193 mach_msg_trap 193 mach_msg_trap 193 Thread_1f03 193 _pthread_body 193 ReadSchedulerThreadEntryPoint 193 TSWaitOnSemaphoreCommon 193 _pthread_cond_wait 193 semaphore_timedwait_signal_trap 193 semaphore_timedwait_signal_trap 193 Thread_2003 193 _pthread_body 193 forkThreadForFunction 193 +[NSURLConnection(NSURLConnectionInternal) _resourceLoadLoop:] 193 -[NSRunLoop run] 193 -[NSRunLoop runMode:beforeDate:] 193 CFRunLoopRunSpecific 193 __CFRunLoopRun 193 mach_msg 193 mach_msg_trap 193 mach_msg_trap 193 Thread_2103 193 _pthread_body 193 __CFSocketManager 193 select 193 select 193 Thread_2203 193 _pthread_body 193 forkThreadForFunction 193 +[NSURLCache _diskCacheSyncLoop:] 193 -[NSRunLoop run] 193 -[NSRunLoop runMode:beforeDate:] 193 CFRunLoopRunSpecific 193 __CFRunLoopRun 193 mach_msg 193 mach_msg_trap 193 mach_msg_trap 193 Thread_2303 193 _pthread_body 193 CAPThread::Entry(CAPThread*) 193 HALRunLoop::OwnThread(void*) 193 CFRunLoopRunSpecific 193 __CFRunLoopRun 193 mach_msg 193 mach_msg_trap 193 mach_msg_trap 193 Thread_2403 193 _pthread_body 193 JVM_RaiseSignal 193 JVM_FindClassFromClass 193 JVM_SetPrimitiveField 193 JVM_Interrupt 193 JVM_Close 193 JVM_GetCPClassNameUTF 193 JVM_GetCPMethodClassNameUTF 193 0xf82116c 193 0xf824310 193 0xf824310 193 0xf8c8d8c 193 0xf8c79e4 193 JVM_MonitorWait 193 __cmpdi2 193 _mh_dylib_header 193 JVM_GetClassAccessFlags 193 mach_msg 193 mach_msg_trap 193 mach_msg_trap Total number in stack (recursive counted multiple, when >=5): 30 js_MarkAtom 21 js_Mark 19 _pthread_body 14 js_SetCallVariable 13 mach_msg 13 mach_msg_trap 12 js_MarkScript 11 JVM_RaiseSignal 7 JVM_GetClassAccessFlags 6 GetIdentityObject(JSContext*, JSObject*) 6 JVM_FindClassFromClass 6 xpc_MarkForValidWrapper(JSContext*, XPCWrappedNative*, void*) Sort by top of stack, same collapsed (when >= 5): mach_msg_trap 2147 select 386 semaphore_timedwait_signal_trap 386 semaphore_wait_signal_trap 386 semaphore_wait_trap 193 syscall_thread_switch 159 js_MarkAtom 102 js_MarkScript 56 xpc_MarkForValidWrapper(JSContext*, XPCWrappedNative*, void*) 8 GetIdentityObject(JSContext*, JSObject*) 5 Sample analysis of process 6687 written to file /dev/stdout Sampling process 6687 each 10 msecs 300 times
Comment 1•16 years ago
|
||
In the future, please *attach* samples to bugs rather than pasting them in, as it makes the bug (and the sample report) much more difficult to read. :)
Comment 2•16 years ago
|
||
By the way, I keep seeing this with trunk builds every so often myself; see also bug 415532 and, in particular, bug 412223. cl
Reporter | ||
Comment 3•16 years ago
|
||
Adding attachment as cut & paste lost formatting.
Reporter | ||
Comment 4•16 years ago
|
||
Comments regarding similar open tickets: - 415532, if my hang was related to closing tabs, I hadn't closed any tabs or windows for quite some time prior (or opened) to hang. - 412223, Camino was in a hung state for many hours, I didn't think it would recover. I'll let someone wiser than me determine if 421768 and 412223 should be merged.
Comment 5•16 years ago
|
||
I don't see any Flash at all in this sample (which probably rules out bug 412223, as I *always* saw Flash all over those samples), just a whole ton of JS. In that respect, it reminds me somewhat of bug 418388 (though the samples don't look at all the same there, either). Allen, have you seen this at all since 1.6 was released? Any chance you could try it on Mac OS X 10.4?
Reporter | ||
Comment 6•16 years ago
|
||
(In reply to comment #5) > I don't see any Flash at all in this sample (which probably rules out bug > 412223, as I *always* saw Flash all over those samples), just a whole ton of > JS. In that respect, it reminds me somewhat of bug 418388 (though the samples > don't look at all the same there, either). > > Allen, have you seen this at all since 1.6 was released? Any chance you could > try it on Mac OS X 10.4? > I've confirmed the same behavior on 1.6, on two different 10.3.9 systems: - 760Mbyte iMac, my main system, because of OS upgrades and system restores from backup, integrity could be questioned. - 1G mini-mac, system is pretty much stock. I just loaded 1.6, opened 15 tabs of alternating startribune and nytimes, and overnight camino hung. I don't have immediate plans to upgrade my systems to 10.4, but if I get a chance I will try running the experiment on a 10.4 and 10.5 systems I have access too.
Reporter | ||
Comment 7•16 years ago
|
||
I haven't yet tested for the leak on a 10.4 system, but I've confirmed a similar leak occurs with the latest Firefox 2.0.0.14. However, the system doesn't run out of memory for several days, where Camino takes about a half day. Seeing Firefox 3.0beta fixes thousands of leaks, I don't think I need to open a ticket against Firefox.
Reporter | ||
Comment 8•16 years ago
|
||
This leak hasn't appeared since I disable the flash block, last night. In all my other testing flash block was enabled. Available RAM didn't decrease at all, though as expected, CPU consumption increased. I will continue to test this configuration indefinitely, and will update this bug if needed. My previous testing with firefox had the flash block add on installed.
Reporter | ||
Comment 9•16 years ago
|
||
Disabling flash block just slows down the leak. After several days, all available memory is consumed, and swapping occurs, forcing me to restart Camino. (I've just updated to latest Shockwave Flash 9.0 r124)
Comment 10•16 years ago
|
||
Given that this is all in core, and Gecko 1.8 is maintenance only, the next step here would be to try your reproducible case with a current nightly build (note that the first time you run a nightly, you'll lose cookies and cookie/popup exception lists, due to unfortunate Gecko decisions, so you'll want to use Troubleshoot Camino or back up your profile).
Comment 11•16 years ago
|
||
Sorry, I forgot that you are running 10.3.9; nightly builds only support 10.4+. If you can't test on 10.4+, we really need a reduced test-case.
Philip, Allen mentions in his comments (comment 8/9) that disabling Flashblock seems to help slow the development of this problem; is there anything that jumps out at you from a Flashblock perspective?
Comment 13•16 years ago
|
||
I've been seeing similar behavior as well; for more samples, see http://forums.mozillazine.org/viewtopic.php?t=652865 for more examples. Note that in every case, the high CPU remains *even if I close all the tabs*
Comment 14•16 years ago
|
||
> is there anything that
> jumps out at you from a Flashblock perspective?
I've seen heavy CPU usage on some heavily AJAXed websites that interact with their flash objects. Apparently the AJAX code doesn't expect the Flash object to disappear and goes into an tight endless loop trying to get a response from the Flash which of course we have removed from the DOM. But this doesn't explain the high CPU usage *after* closing the tabs.
There is another bug open for Firefox about sockets for MPEG streaming media being kept open even after a tab has been closed (confirmed with wireshark). If the Flash is an embedded flash media player (like youtube) this might be relevant.
Comment 15•16 years ago
|
||
Comment on attachment 324341 [details]
Sample of spinning Camino with no windows open
This is from trunk, not branch, and has a completely different stack, so it's almost certainly unrelated.
Attachment #324341 -
Attachment is obsolete: true
Comment 16•15 years ago
|
||
Without being able to test on a nightly build there's nothing we can really do here (per comment 10). Given that, I'm going to go ahead and close this as INCOMPLETE; if you do get a chance to try a nightly build and still have issues it's probably best to open a new bug anyway since there have been so many changes in core.
Status: UNCONFIRMED → RESOLVED
Closed: 15 years ago
Resolution: --- → INCOMPLETE
Reporter | ||
Comment 17•15 years ago
|
||
Subjective comments regarding 1.6.7 (v1.8.1.21 2009032711) - seems to take longer for free memory to fill up. And the problem is very noticeable with www.startribune.com opened, a site ladened with Flash ads. - Since opening ticket, I've seen reference to some known issue with 10.3.9 library that maybe related to memory leak. Opera browser seems to behave in a similar manner. (Safari doesn't work well anymore). - I'll try to test a nightly build or next major release, and open bug if problem persists, unless I get around to upgrading my OS (10.3.9).
Resolution: INCOMPLETE → FIXED
Not FIXED because we can't point to any specific code changes, whatever the current state may be.
Resolution: FIXED → INCOMPLETE
You need to log in
before you can comment on or make changes to this bug.
Description
•