WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
CLOSED FIXED
46338
REGRESSION: in Hotmail, a hang occurs after placing caret in the message body
https://bugs.webkit.org/show_bug.cgi?id=46338
Summary
REGRESSION: in Hotmail, a hang occurs after placing caret in the message body
Chris Petersen
Reported
2010-09-22 21:42:51 PDT
1) On 10.6.4 with Safari 5.0.2 installed, launch Webkit NB (
r68077
) 2) Login to your Hotmail account 3) Create a new rich text message 4) Click in the message body of new message and a hang occurs Analysis of sampling Safari (pid 9482) every 1 millisecond Call graph: 3273 Thread_248688 DispatchQueue_1: com.apple.main-thread (serial) 3273 0x22ffffffff 3273 JSC::RegExp::match(JSC::UString const&, int, WTF::Vector<int, 32ul>*) 805 0x52ced7559394 435 0x52ced755937d 433 0x52ced75593b5 404 0x52ced7559310 401 0x52ced755939a 394 0x52ced75593c3 388 0x52ced755936f 13 0x52ced7559385 3273 Thread_248698 DispatchQueue_2: com.apple.libdispatch-manager (serial) 3273 start_wqthread 3273 _pthread_wqthread 3273 _dispatch_worker_thread2 3273 _dispatch_queue_invoke 3273 _dispatch_mgr_invoke 3273 kevent 3273 Thread_248700: WebCore: IconDatabase 3273 thread_start 3273 _pthread_start 3273 WebCore::IconDatabase::iconDatabaseSyncThread() 3273 WebCore::IconDatabase::syncThreadMainLoop() 3273 _pthread_cond_wait 3273 __semwait_signal 3273 Thread_248703: Safari: SafeBrowsingManager 3273 thread_start 3273 _pthread_start 3273 0x10002f9d1 3273 0x10002fa41 3273 CFRunLoopRunSpecific 3273 __CFRunLoopRun 3213 mach_msg 3213 mach_msg_trap 31 0x10004e059 31 0x100054492 20 0x1000547bf 19 0x100054b03 19 0x1000327e2 19 sqlite3_step 19 sqlite3VdbeExec 8 sqlite3VdbeExec 5 sqlite3BtreeMovetoUnpacked 3 sqlite3VdbeIdxRowid 1 sqlite3BtreeParseCellPtr 1 sqlite3VdbeMemRelease 1 sqlite3VdbeSerialGet 2 sqlite3VdbeSerialGet 1 sqlite3BtreeNext 1 getAndInitPage 1 sqlite3PagerAcquire 1 unixRead 1 pread 1 0x100054ac9 1 sqlite3_column_int 11 0x100054830 11 0x100054e9b 11 0x1000327e2 11 sqlite3_step 11 sqlite3VdbeExec 5 sqlite3BtreeMovetoUnpacked 3 sqlite3BtreeMovetoUnpacked 1 getAndInitPage 1 sqlite3PagerAcquire 1 unixRead 1 pread 1 sqlite3GetVarint 4 sqlite3VdbeExec 2 sqlite3VdbeIdxRowid 29 __CFRunLoopDoSources0 25 MultiplexerSource::perform() 24 URLConnectionClient::processEvents() 24 URLConnectionClient::ClientConnectionEventQueue::processAllEventsAndConsumePayload(XConnectionEventInfo<XClientEvent, XClientEventParams>*, long) 24 URLConnectionClient::ClientConnectionEventQueue::processAllEventsAndConsumePayload(XConnectionEventInfo<XClientEvent, XClientEventParams>*, long) 24 URLConnectionClient::_clientDidFinishLoading(URLConnectionClient::ClientConnectionEventQueue*) 24 0x10005525c 15 0x10005545a 15 0x100056512 15 0x100056897 15 0x10005658e 15 sqlite3_exec 15 sqlite3_step 15 sqlite3VdbeExec 15 sqlite3VdbeHalt 15 sqlite3BtreeCommitPhaseTwo 15 pager_end_transaction 9 unixDelete 9 unlink 9 __unlink 6 closeUnixFile 6 close 6 0x1000554c9 6 0x100056b40 6 0x100058eef 6 0x100059037 6 0x1000327e2 6 sqlite3_step 6 sqlite3VdbeExec 6 sqlite3VdbeHalt 6 sqlite3BtreeCommitPhaseOne 6 sqlite3PagerCommitPhaseOne 4 unixSync 4 fsync 2 syncJournal 2 unixSync 2 fsync 3 0x10005543a 3 0x1000323e6 3 0x1000327e2 3 sqlite3_step 3 sqlite3VdbeExec 3 sqlite3BtreeBeginTrans 3 sqlite3PagerAcquire 3 sqlite3PcacheFetch 3 pcache1Fetch 1 URLConnectionLoader::processEvents() 1 URLConnectionLoader::LoaderConnectionEventQueue::processAllEventsAndConsumePayload(XConnectionEventInfo<XLoaderEvent, XLoaderEventParams>*, long) 1 URLConnectionLoader::loaderScheduleOriginLoad(_CFURLRequest const*) 1 HTTPProtocol::createAndOpenStream() 1 HTTPProtocol::createStream() 1 HTTPProtocol::addCookies(__CFHTTPMessage*, _CFURLRequest const*) 1 _CFHTTPCookieStorageGetDefault 1 CFHTTPCookieStorageCreateFromFile 1 HTTPCookieStorage::initialize(__CFURL const*, OpaqueCFHTTPCookieStorage*) 1 PrivateHTTPCookieStorage::copyStorage(__CFAllocator const*, __CFURL const*) 1 CFDictionaryGetValue 1 CFBasicHashFindBucket 1 ___CFBasicHashFindBucket1 1 __CFURLHash 1 CFURLCopyLastPathComponent 1 _rangeOfLastPathComponent 1 CFStringFindWithOptions 1 CFStringFindWithOptionsAndLocale 4 __CFSocketPerformV0 4 __CFSocketDoCallback 4 SocketStream::_SocketCallBack_stream(__CFSocket*, unsigned long, __CFData const*, void const*, void*) 4 SocketStream::socketCallback(__CFSocket*, unsigned long, __CFData const*, void const*) 4 SocketStream::dispatchSignalFromSocketCallbackUnlocked(SocketStreamSignalHolder*) 4 _CFStreamSignalEvent 4 CFRunLoopContainsSource 4 CFSetContainsValue 4 CFBasicHashGetCountOfKey 4 ___CFBasicHashFindBucket1 3273 Thread_248704 3273 thread_start 3273 _pthread_start 3273 __NSThread__main__ 3273 +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:] 3273 CFRunLoopRunSpecific 3273 __CFRunLoopRun 3273 mach_msg 3273 mach_msg_trap 3273 Thread_248707 3273 thread_start 3273 _pthread_start 3273 __CFSocketManager 3273 select$DARWIN_EXTSN 3273 Thread_248714: Safari: SnapshotStore 3273 thread_start 3273 _pthread_start 3273 0x10004738d 3273 0x10004750f 3273 0x1001be851 3273 WTF::ThreadCondition::timedWait(WTF::Mutex&, double) 3273 _pthread_cond_wait 3273 __semwait_signal 3273 Thread_248764: WebCore: LocalStorage 3273 thread_start 3273 _pthread_start 3273 WebCore::LocalStorageThread::threadEntryPoint() 3273 WTF::ThreadCondition::timedWait(WTF::Mutex&, double) 3273 _pthread_cond_wait 3273 __semwait_signal 3273 Thread_248818 3273 thread_start 3273 _pthread_start 3273 thread_fun 3273 CA::Render::Server::server_thread(void*) 3273 mach_msg 3273 mach_msg_trap 2705 Thread_248922 2705 start_wqthread 2705 _pthread_wqthread 2705 __workq_kernreturn 568 Thread_248699 568 start_wqthread 568 _pthread_wqthread 568 __workq_kernreturn 15 Thread_248933 15 thread_start 14 _pthread_start 14 si_async_launchpad 14 si_addrinfo 14 search_addrinfo 14 _mdns_addrinfo 14 _mdns_search 14 _mdns_query_mDNSResponder 14 kevent 1 __spin_lock Total number in stack (recursive counted multiple, when >=5): 8 _pthread_start 8 thread_start 5 sqlite3VdbeExec 5 sqlite3_step Sort by top of stack, same collapsed (when >= 5): __semwait_signal 9819 mach_msg_trap 9759 kevent 3287 __workq_kernreturn 3273 select$DARWIN_EXTSN 3273 0x52ced7559394 805 0x52ced755937d 435 0x52ced75593b5 433 0x52ced7559310 404 0x52ced755939a 401 0x52ced75593c3 394 0x52ced755936f 388 0x52ced7559385 13 sqlite3VdbeExec 12 __unlink 9 sqlite3BtreeMovetoUnpacked 8 close 6 fsync 6
Attachments
Add attachment
proposed patch, testcase, etc.
Alexey Proskuryakov
Comment 1
2010-09-23 10:34:40 PDT
There was another fix for hanging in RegExp::match() made in
r68100
(for
bug 46189
).
Chris Petersen
Comment 2
2010-09-23 10:59:13 PDT
Thanks, Alexey. I will test this in the next Webkit NB and verify it.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug