Opened 13 years ago

Closed 12 years ago

#283 closed Defect (Works for Me)

When DCC recipient cancels a file you are sending it locks up Colloquy/puts it in spinning beachball of death mode.

Reported by: BLeST Owned by: Timothy
Component: Chat Core (IRC) Version: 2.2 (Mac)
Severity: Major Keywords:
Cc:

Description

Here is a sample taken once the Colloquy(2D25) has locked up.

Analysis of sampling pid 378 every 10.000000 milliseconds
Call graph:
    284 Thread_100f
      284 start
        284 _start
          284 main
            284 NSApplicationMain
              284 -[NSApplication run]
                284 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]
                  284 _DPSNextEvent
                    284 BlockUntilNextEventMatchingListInMode
                      284 ReceiveNextEventCommon
                        284 RunCurrentEventLoopInMode
                          284 CFRunLoopRunSpecific
                            284 __CFRunLoopRun
                              284 __CFRunLoopDoObservers
                                284 _handleWindowNeedsDisplay
                                  284 -[NSWindow displayIfNeeded]
                                    284 -[NSView displayIfNeeded]
                                      284 -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:]
                                        284 -[NSThemeFrame _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                          284 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                            284 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                              284 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                                284 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                                  284 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                                    284 -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
                                                      284 -[NSView _drawRect:clip:]
                                                        284 -[NSTableView drawRect:]
                                                          284 -[NSTableView drawRowIndexes:clipRect:]
                                                            284 -[NSTableView drawRow:clipRect:]
                                                              284 -[NSTableView _drawContentsAtRow:column:clipRect:]
                                                                284 -[MVFileTransferController(MVFileTransferControllerDelegate) tableView:willDisplayCell:forTableColumn:row:]
                                                                  284 -[MVFileTransferController(MVFileTransferControllerPrivate) _infoForTransferAtIndex:]
                                                                    284 -[MVIRCUploadFileTransfer transfered]
                                                                      284 pthread_mutex_lock
                                                                        284 semaphore_wait_signal_trap
                                                                          284 semaphore_wait_signal_trap
    284 Thread_1103
      284 _pthread_body
        284 forkThreadForFunction
          284 +[NSURLConnection(NSURLConnectionInternal) _resourceLoadLoop:]
            284 CFRunLoopRunSpecific
              284 __CFRunLoopRun
                284 mach_msg
                  284 mach_msg_trap
                    284 mach_msg_trap
    284 Thread_1203
      284 _pthread_body
        284 __CFSocketManager
          284 select
            284 select
    284 Thread_1303
      284 _pthread_body
        284 forkThreadForFunction
          284 +[NSURLCache _diskCacheSyncLoop:]
            284 CFRunLoopRunSpecific
              284 __CFRunLoopRun
                284 mach_msg
                  284 mach_msg_trap
                    284 mach_msg_trap
    284 Thread_1403
      284 _pthread_body
        284 forkThreadForFunction
          284 +[MVIRCChatConnection(MVIRCChatConnectionPrivate) _irssiRunLoop]
            284 g_main_iterate
              284 g_main_dispatch
                284 irssi_io_invoke
                  284 dcc_destroy
                    284 signal_emit
                      284 signal_emit_real
                        284 -[MVIRCUploadFileTransfer(MVIRCUploadFileTransferPrivate) _destroying]
                          284 objc_sync_enter
                            284 pthread_mutex_lock
                              284 semaphore_wait_signal_trap
                                284 semaphore_wait_signal_trap
    284 Thread_1503
      284 _pthread_body
        284 forkThreadForFunction
          284 +[WebFileDatabase _syncLoop:]
            284 -[NSRunLoop run]
              284 -[NSRunLoop runMode:beforeDate:]
                284 CFRunLoopRunSpecific
                  284 __CFRunLoopRun
                    284 mach_msg
                      284 mach_msg_trap
                        284 mach_msg_trap
    284 Thread_1603
      284 _pthread_body
        284 forkThreadForFunction
          284 -[NSUIHeartBeat _heartBeatThread:]
            284 -[NSViewHierarchyLock lockForReadingWithExceptionHandler:]
              284 pthread_cond_wait
                284 semaphore_wait_signal_trap
                  284 semaphore_wait_signal_trap

Total number in stack (recursive counted multiple, when >=5):
        6       _pthread_body
        5       -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
        5       forkThreadForFunction

Sort by top of stack, same collapsed (when >= 5):
        mach_msg_trap        852
        semaphore_wait_signal_trap        852
        select        284
Sample analysis of process 378 written to file /dev/stdout
Sampling process 378 each 10 msecs 300 times

Change History (3)

comment:1 Changed 13 years ago by timothy

Another report emailed to me:

I was sending a file via DCC to a friend and his connection dropped during the upload. As the connection dropped the application locked up, while i could switch between the windows, i couldn't interact with them and the beachball was spinning. I think i may have waited the connection to time out, but i'm not sure (i think i've been waiting more than 1 minute before force quitting).

comment:2 Changed 13 years ago by 2D26 Source Build

Analysis of sampling pid 367 every 10.000000 milliseconds
Call graph:
    9131 Thread_100f
      9131 start
        9131 _start
          9131 main
            9131 NSApplicationMain
              9131 -[NSApplication run]
                9131 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]
                  9131 _DPSNextEvent
                    9131 BlockUntilNextEventMatchingListInMode
                      9131 ReceiveNextEventCommon
                        9131 RunCurrentEventLoopInMode
                          9131 CFRunLoopRunSpecific
                            9131 __CFRunLoopRun
                              9131 __CFRunLoopDoObservers
                                9131 _handleWindowNeedsDisplay
                                  9131 -[NSWindow displayIfNeeded]
                                    9131 -[NSView displayIfNeeded]
                                      9131 -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:]
                                        9131 -[NSThemeFrame _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                          9131 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                            9131 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                              9131 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                                9131 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                                  9131 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
                                                    9131 -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
                                                      9131 -[NSView _drawRect:clip:]
                                                        9131 -[NSTableView drawRect:]
                                                          9131 -[NSTableView drawRowIndexes:clipRect:]
                                                            9131 -[NSTableView drawRow:clipRect:]
                                                              9131 -[NSTableView _drawContentsAtRow:column:clipRect:]
                                                                9131 -[MVFileTransferController(MVFileTransferControllerDelegate) tableView:willDisplayCell:forTableColumn:row:]
                                                                  9131 -[MVFileTransferController(MVFileTransferControllerPrivate) _infoForTransferAtIndex:]
                                                                    9131 -[MVIRCUploadFileTransfer transfered]
                                                                      9131 pthread_mutex_lock
                                                                        9131 semaphore_wait_signal_trap
                                                                          9131 semaphore_wait_signal_trap
    9131 Thread_1103
      9131 _pthread_body
        9131 forkThreadForFunction
          9131 +[NSURLConnection(NSURLConnectionInternal) _resourceLoadLoop:]
            9131 CFRunLoopRunSpecific
              9131 __CFRunLoopRun
                9131 mach_msg
                  9131 mach_msg_trap
                    9131 mach_msg_trap
    9131 Thread_1203
      9131 _pthread_body
        9131 __CFSocketManager
          9131 select
            9131 select
    9131 Thread_1303
      9131 _pthread_body
        9131 forkThreadForFunction
          9131 +[NSURLCache _diskCacheSyncLoop:]
            9131 CFRunLoopRunSpecific
              9131 __CFRunLoopRun
                9131 mach_msg
                  9131 mach_msg_trap
                    9131 mach_msg_trap
    9131 Thread_1403
      9131 _pthread_body
        9131 forkThreadForFunction
          9131 +[MVIRCChatConnection(MVIRCChatConnectionPrivate) _irssiRunLoop]
            9131 g_main_iterate
              9131 g_main_dispatch
                9131 irssi_io_invoke
                  9131 dcc_destroy
                    9131 signal_emit
                      9131 signal_emit_real
                        9131 -[MVIRCUploadFileTransfer(MVIRCUploadFileTransferPrivate) _destroying]
                          9131 objc_sync_enter
                            9131 pthread_mutex_lock
                              9131 semaphore_wait_signal_trap
                                9131 semaphore_wait_signal_trap
    9131 Thread_1503
      9131 _pthread_body
        9131 forkThreadForFunction
          9131 +[WebFileDatabase _syncLoop:]
            9131 -[NSRunLoop run]
              9131 -[NSRunLoop runMode:beforeDate:]
                9131 CFRunLoopRunSpecific
                  9131 __CFRunLoopRun
                    9131 mach_msg
                      9131 mach_msg_trap
                        9131 mach_msg_trap
    9131 Thread_1603
      9131 _pthread_body
        9131 forkThreadForFunction
          9131 -[NSUIHeartBeat _heartBeatThread:]
            9131 -[NSViewHierarchyLock lockForReadingWithExceptionHandler:]
              9131 pthread_cond_wait
                9131 semaphore_wait_signal_trap
                  9131 semaphore_wait_signal_trap

Total number in stack (recursive counted multiple, when >=5):
        6       _pthread_body
        5       -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
        5       forkThreadForFunction

Sort by top of stack, same collapsed (when >= 5):
        mach_msg_trap        27393
        semaphore_wait_signal_trap        27393
        select        9131
Sample analysis of process 367 written to file /dev/stdout
Sampling process 367 each 10 msecs 300 times

comment:3 Changed 12 years ago by timothy

  • Resolution set to worksforme
  • Status changed from new to closed

Please try with the 3/11 nightly. Reopen if this issue still occurs.

Note: See TracTickets for help on using tickets.