Opened 13 years ago

Closed 12 years ago

#272 closed Defect (Works for Me)

Hang on disconnecting connection that was failing to reconnect

Reported by: kpreid@… Owned by: timothy
Component: Colloquy (Mac) Version: 2.2 (Mac)
Severity: Normal Keywords: hang, reconnect
Cc:

Description

I had two connections, both disconnected via /quit. I clicked the toolbar connect button for the first one. It then sat in the connecting (curly-arrow) state without doing anything and using CPU. Later, I clicked the toolbar disconnect button (which is the same button, of course), and Colloquy hung.

Analysis of sampling pid 5612 every 10.000000 milliseconds
Call graph:
    238 Thread_110b
      238 start
        238 _start
          238 main
            238 NSApplicationMain
              238 -[NSApplication run]
                238 -[NSApplication sendEvent:]
                  238 -[NSWindow sendEvent:]
                    238 -[NSToolbarItemViewer mouseDown:]
                      238 -[NSToolbarButton sendAction]
                        238 -[NSToolbarButton sendAction:to:]
                          238 -[MVIRCChatConnection(MVIRCChatConnectionPrivate) _forceDisconnect]
                            238 server_connect_failed
                              238 g_source_remove
                                238 g_hook_get
                                  238 g_hook_get
    238 Thread_1203
      238 _pthread_body
        238 forkThreadForFunction
          238 +[NSURLConnection(NSURLConnectionInternal) _resourceLoadLoop:]
            238 -[NSRunLoop run]
              238 -[NSRunLoop runMode:beforeDate:]
                238 CFRunLoopRunSpecific
                  238 __CFRunLoopRun
                    238 mach_msg
                      238 mach_msg_trap
                        238 mach_msg_trap
    238 Thread_1303
      238 _pthread_body
        238 _loadRunLoop
          238 select
            238 select
    238 Thread_1403
      238 _pthread_body
        238 forkThreadForFunction
          238 +[NSURLCache _diskCacheSyncLoop:]
            238 -[NSRunLoop run]
              238 -[NSRunLoop runMode:beforeDate:]
                238 CFRunLoopRunSpecific
                  238 __CFRunLoopRun
                    238 mach_msg
                      238 mach_msg_trap
                        238 mach_msg_trap
    238 Thread_1503
      238 _pthread_body
        238 forkThreadForFunction
          238 +[MVIRCChatConnection(MVIRCChatConnectionPrivate) _irssiRunLoop]
            238 g_main_iterate
              238 g_hook_next_valid
                238 g_hook_next_valid
    238 Thread_1603
      238 _pthread_body
        238 CAPThread::Entry(CAPThread*)
          238 HALRunLoop::OwnThread(void*)
            238 CFRunLoopRunSpecific
              238 __CFRunLoopRun
                238 mach_msg
                  238 mach_msg_trap
                    238 mach_msg_trap
    238 Thread_1703
      238 _pthread_body
        238 forkThreadForFunction
          238 +[WebFileDatabase _syncLoop:]
            238 -[NSRunLoop run]
              238 -[NSRunLoop runMode:beforeDate:]
                238 CFRunLoopRunSpecific
                  238 __CFRunLoopRun
                    238 mach_msg
                      238 mach_msg_trap
                        238 mach_msg_trap
    238 Thread_1803
      238 _pthread_body
        238 forkThreadForFunction
          238 -[NSUIHeartBeat _heartBeatThread:]
            238 -[NSConditionLock lockWhenCondition:]
              238 _pthread_cond_wait
                238 semaphore_wait_signal_trap
                  238 semaphore_wait_signal_trap

Total number in stack (recursive counted multiple, when >=5):
        7       _pthread_body
        5       forkThreadForFunction

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

Change History (1)

comment:1 Changed 12 years ago by timothy

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

THis should be fixed now that we have moved off of Irssi.

Note: See TracTickets for help on using tickets.