Bug 23184 - Webkit Freezes if you right-click on a tuaw.com link to open a new tab (corrected)
Summary: Webkit Freezes if you right-click on a tuaw.com link to open a new tab (corr...
Status: UNCONFIRMED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 312.x
Hardware: Mac OS X 10.5
: P2 Normal
Assignee: Nobody
URL: http://tuaw.com
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-08 09:02 PST by Athtart
Modified: 2009-01-08 13:22 PST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Athtart 2009-01-08 09:02:00 PST
Webkit Freezes if MobileMe sync is running. When Sync is in progess Webkit has a spinning wheel and will not respond. I have 5 tabs open to various web and local pages, incl. Facebook and Flickr.
Comment 1 Mark Rowe (bdash) 2009-01-08 12:25:27 PST
Are you able to reproduce this problem again?  If so, can you please run Activity Monitor, select WebKit and select View -> Sample Process *while* WebKit is frozen.  Then attach the resulting data to this bug report.
Comment 2 Athtart 2009-01-08 12:58:19 PST
I think I have narrowed it down to right-clicking (two finger click on my Macbook Pro) when on the tuaw.com website. I have repeatedly confirmed that to right click a link on their site cause the color wheel to spin and the browser to freeze requiring a forced quit. In fact I just opened Only the tuaw.com page and then right clicked on the "link" link in the Parallels article and voila! spinning wheel of freeze! Plain clicking them works as normal.

Sync seems to be unrelated.
Comment 3 Athtart 2009-01-08 13:03:52 PST
Sampling process 5653 for 3 seconds with 1 millisecond of run time between samples
Sampling completed, processing symbols...
Analysis of sampling Safari (pid 5653) every 1 millisecond
Call graph:
    1042 Thread_2503
      1042 0xb9b16
        1042 NSApplicationMain
          1042 -[NSApplication run]
            1042 0x2ab58
              1042 -[NSApplication sendEvent:]
                1042 0x2b0d3
                  1042 -[NSWindow sendEvent:]
                    1042 -[NSControl _rightMouseUpOrDown:]
                      1042 -[NSView rightMouseDown:]
                        1042 -[NSMenu _popUpMenuWithEvent:forView:]
                          1042 -[NSMenu _popUpContextMenu:withEvent:forView:]
                            1042 -[NSMenu _popUpContextMenu:withEvent:forView:withFont:]
                              1042 -[NSCarbonMenuImpl _popUpContextMenu:withEvent:forView:withFont:]
                                1042 _NSPopUpCarbonMenu1
                                  1042 _NSPopUpCarbonMenu2
                                    1042 _NSPopUpCarbonMenu3
                                      1042 _FM_CM_i_AllMenuItemsAreDisabled
                                        1042 _ContextualMenuInsertItems
                                          1042 _ContextualMenuInsertItems(MenuData*, unsigned short, AEDesc const*, ContextualMenuHelp const*, unsigned long*, OpaqueContextualMenuItemsRef**)
                                            1042 TContextualMenuPluginList::ExamineContext(AEDesc const*, TPluginCommandList&, long)
                                              1042 TContextualMenuPlugin::ExamineContext(AEDesc const*, TPluginCommandList&, unsigned long, unsigned char&)
                                                1042 CMPluginExamineContext
                                                  1042 createStandardMenu(AEDesc*)
                                                    1042 _targetAppServicesProxy()
                                                      1042 _CF_forwarding_prep_0
                                                        1042 ___forwarding___
                                                          1042 -[NSDistantObject forwardInvocation:]
                                                            1042 -[NSConnection sendInvocation:internal:]
                                                              1042 -[NSConcretePortCoder sendBeforeTime:sendReplyPort:]
                                                                1042 -[NSMachPort sendBeforeTime:streamData:components:from:msgid:]
                                                                  1042 +[NSMachPort sendBeforeTime:streamData:components:to:from:msgid:reserved:]
                                                                    1042 mach_msg
                                                                      1042 mach_msg_trap
                                                                        1042 mach_msg_trap
    1042 Thread_2603
      1042 thread_start
        1042 _pthread_start
          1042 __ape_agent
            1042 mach_msg
              1042 mach_msg_trap
                1042 mach_msg_trap
    1042 Thread_2703
      1042 thread_start
        1042 _pthread_start
          1042 WebCore::IconDatabase::iconDatabaseSyncThread()
            1042 WebCore::IconDatabase::syncThreadMainLoop()
              1042 pthread_cond_wait$UNIX2003
                1042 __semwait_signal
                  1042 __semwait_signal
    1042 Thread_2803
      1042 thread_start
        1042 _pthread_start
          1042 CFURLCacheWorkerThread(void*)
            1042 CFRunLoopRunInMode
              1042 CFRunLoopRunSpecific
                1042 mach_msg
                  1042 mach_msg_trap
                    1042 mach_msg_trap
    1042 Thread_2903
      1042 thread_start
        1042 _pthread_start
          1042 __NSThread__main__
            1042 -[NSThread main]
              1042 -[NSUIHeartBeat _heartBeatThread:]
                1042 -[NSConditionLock lockWhenCondition:]
                  1042 -[NSConditionLock lockWhenCondition:beforeDate:]
                    1042 -[NSCondition waitUntilDate:]
                      1042 pthread_cond_timedwait_relative_np
                        1042 _pthread_cond_wait
                          1042 semaphore_timedwait_signal_trap
                            1042 semaphore_timedwait_signal_trap
    1042 Thread_2a03
      1042 thread_start
        1042 _pthread_start
          1042 WebCore::LocalStorageThread::localStorageThread()
            1042 pthread_cond_wait$UNIX2003
              1042 __semwait_signal
                1042 __semwait_signal
    1042 Thread_2b03
      1042 thread_start
        1042 _pthread_start
          1042 0x118081
            1042 0x117fd3
              1042 0x118d4d
                1042 CFRunLoopRunInMode
                  1042 CFRunLoopRunSpecific
                    1042 mach_msg
                      1042 mach_msg_trap
                        1042 mach_msg_trap
    1042 Thread_2c03
      1042 thread_start
        1042 _pthread_start
          1042 __NSThread__main__
            1042 -[NSThread main]
              1042 +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:]
                1042 CFRunLoopRunInMode
                  1042 CFRunLoopRunSpecific
                    1042 mach_msg
                      1042 mach_msg_trap
                        1042 mach_msg_trap
    1042 Thread_2d03
      1042 thread_start
        1042 _pthread_start
          1042 ReadSchedulerThreadEntryPoint
            1042 TSWaitOnSemaphoreCommon
              1042 TSWaitOnConditionTimedRelative
                1042 pthread_cond_timedwait_relative_np
                  1042 _pthread_cond_wait
                    1042 semaphore_timedwait_signal_trap
                      1042 semaphore_timedwait_signal_trap
    1042 Thread_2e03
      1042 thread_start
        1042 _pthread_start
          1042 select$DARWIN_EXTSN
            1042 select$DARWIN_EXTSN
    1042 Thread_2f03
      1042 start_wqthread
        1042 __workq_ops
          1042 __workq_ops
    1042 Thread_3103
      1042 thread_start
        1042 _pthread_start
          1042 Flash_EnforceLocalSecurity
            1042 mach_msg
              1042 mach_msg_trap
                1042 mach_msg_trap
    1042 Thread_3203
      1042 thread_start
        1042 _pthread_start
          1042 0x171932cc
            1042 Flash_EnforceLocalSecurity
              1042 0x17192ece
                1042 pthread_cond_wait
                  1042 _pthread_cond_wait
                    1042 semaphore_wait_signal_trap
                      1042 semaphore_wait_signal_trap
    1042 Thread_3303
      1042 thread_start
        1042 _pthread_start
          1042 0x171932cc
            1042 Flash_EnforceLocalSecurity
              1042 0x17192ece
                1042 pthread_cond_wait
                  1042 _pthread_cond_wait
                    1042 semaphore_wait_signal_trap
                      1042 semaphore_wait_signal_trap

Total number in stack (recursive counted multiple, when >=5):
        12       _pthread_start
        12       thread_start
        6       mach_msg
        6       mach_msg_trap

Sort by top of stack, same collapsed (when >= 5):
        mach_msg_trap        6252
        __semwait_signal        2084
        semaphore_timedwait_signal_trap        2084
        semaphore_wait_signal_trap        2084
        __workq_ops        1042
        select$DARWIN_EXTSN        1042
Sample analysis of process 5653 written to file /dev/stdout
Comment 4 Mark Rowe (bdash) 2009-01-08 13:22:17 PST
I'm almost certain that this is caused by a third-party context menu plugin rather than anything in WebKit or Safari.  I can't tell what the plugin is from that information, but the info shows execution is stuck below TContextualMenuPlugin which indicates a call in to third-party code.  I would suggest removing all third-party extensions and context menu plugins and checking whether the problem still occurs.