WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
14533
Webkit hangs indefinitely when pasting large text into text field
https://bugs.webkit.org/show_bug.cgi?id=14533
Summary
Webkit hangs indefinitely when pasting large text into text field
Adam Williams
Reported
2007-07-05 14:12:42 PDT
If you attempt to paste a LOT of text, (such as a system profiler report saved in RTF) into a text field on battle.net forums. Safari just goes into an endless beachball. Here is a sample from beachball. Analysis of sampling pid 330 every 10.000000 milliseconds Call graph: 95 Thread_0f07 95 0x4f1b0 95 0x246c 95 NSApplicationMain 95 -[NSApplication run] 95 0x16444 95 -[NSApplication sendEvent:] 95 -[NSApplication _handleKeyEquivalent:] 95 -[NSMenu performKeyEquivalent:] 95 -[NSCarbonMenuImpl performActionWithHighlightingForItemAtIndex:] 95 -[NSMenu performActionForItemAtIndex:] 95 0x1a020 95 -[NSApplication sendAction:to:from:] 95 WebCore::Editor::pasteAsPlainTextWithPasteboard(WebCore::Pasteboard*) 95 WebCore::Editor::replaceSelectionWithText(WebCore::String const&, bool, bool) 95 WebCore::Editor::replaceSelectionWithFragment(WTF::PassRefPtr<WebCore::DocumentFragment>, bool, bool, bool) 95 WebCore::applyCommand(WTF::PassRefPtr<WebCore::EditCommand>) 95 WebCore::EditCommand::apply() 95 WebCore::ReplaceSelectionCommand::doApply() 95 WebCore::ReplaceSelectionCommand::completeHTMLReplacement(WebCore::Position const&) 95 WebCore::CompositeEditCommand::applyStyle(WebCore::CSSStyleDeclaration*, WebCore::Position const&, WebCore::Position const&, WebCore::EditAction) 95 WebCore::CompositeEditCommand::applyCommandToComposite(WTF::PassRefPtr<WebCore::EditCommand>) 95 WebCore::EditCommand::apply() 95 WebCore::ApplyStyleCommand::doApply() 95 WebCore::ApplyStyleCommand::applyBlockStyle(WebCore::CSSMutableStyleDeclaration*) 50 WebCore::VisiblePosition::next(bool) const 32 WebCore::nextVisuallyDistinctCandidate(WebCore::Position const&) 23 WebCore::Position::downstream() const 23 WebCore::Position::downstream() const 9 WebCore::Position::isCandidate() const 9 WebCore::Position::inRenderedText() const 9 WebCore::Position::inRenderedText() const 18 WebCore::VisiblePosition::init(WebCore::Position const&, WebCore::EAffinity) 18 WebCore::VisiblePosition::canonicalPosition(WebCore::Position const&) 10 WebCore::Position::upstream() const 10 WebCore::Position::upstream() const 8 WebCore::Position::isCandidate() const 8 WebCore::Position::inRenderedText() const 4 WebCore::InlineTextBox::containsCaretOffset(int) const 4 WebCore::InlineTextBox::containsCaretOffset(int) const 4 WebCore::Position::inRenderedText() const 29 WebCore::endOfParagraph(WebCore::VisiblePosition const&) 17 WebCore::VisiblePosition::VisiblePosition[in-charge](WebCore::Node*, int, WebCore::EAffinity) 17 WebCore::VisiblePosition::init(WebCore::Position const&, WebCore::EAffinity) 17 WebCore::VisiblePosition::canonicalPosition(WebCore::Position const&) 9 WebCore::Position::upstream() const 9 WebCore::Position::upstream() const 8 WebCore::Position::isCandidate() const 7 WebCore::Position::inRenderedText() const 5 WebCore::InlineTextBox::containsCaretOffset(int) const 5 WebCore::InlineTextBox::containsCaretOffset(int) const 2 WebCore::Position::inRenderedText() const 1 WebCore::RenderText::nextOffset(int) const 1 WebCore::RenderText::nextOffset(int) const 12 WebCore::RenderText::caretMaxRenderedOffset() const 12 WebCore::RenderText::caretMaxRenderedOffset() const 14 WebCore::Position::downstream() const 14 WebCore::Position::downstream() const 2 WebCore::StyleChange::StyleChange[in-charge](WebCore::CSSStyleDeclaration*, WebCore::Position const&, WebCore::StyleChange::ELegacyHTMLStyles) 1 WebCore::StyleChange::StyleChange[in-charge](WebCore::CSSStyleDeclaration*, WebCore::Position const&, WebCore::StyleChange::ELegacyHTMLStyles) 1 WebCore::StyleChange::init(WTF::PassRefPtr<WebCore::CSSStyleDeclaration>, WebCore::Position const&) 1 WebCore::StyleChange::currentlyHasStyle(WebCore::Position const&, WebCore::CSSProperty const*) 1 WebCore::CSSPrimitiveValue::cssText() const 1 WebCore::String::number(double) 1 WebCore::String::format(char const*, ...) 1 vsnprintf$LDBL128 1 __vfprintf$LDBL128 1 __vfprintf$LDBL128 95 Thread_1003 95 _pthread_body 95 forkThreadForFunction 95 -[AsyncDB _run:] 95 -[NSConditionLock lockWhenCondition:] 95 pthread_cond_wait 95 semaphore_wait_signal_trap 95 semaphore_wait_signal_trap 95 Thread_1103 95 _pthread_body 95 forkThreadForFunction 95 +[NSURLConnection(NSURLConnectionInternal) _resourceLoadLoop:] 95 CFRunLoopRunSpecific 95 __CFRunLoopRun 95 mach_msg 95 mach_msg_trap 95 mach_msg_trap 95 Thread_1203 95 _pthread_body 95 forkThreadForFunction 95 +[NSURLCache _diskCacheSyncLoop:] 95 CFRunLoopRunSpecific 95 __CFRunLoopRun 95 mach_msg 95 mach_msg_trap 95 mach_msg_trap 95 Thread_1303 95 _pthread_body 95 __CFSocketManager 95 select 95 select 95 Thread_1403 95 _pthread_body 95 native_ShockwaveFlash_TCallFrame 95 mach_msg 95 mach_msg_trap 95 mach_msg_trap Total number in stack (recursive counted multiple, when >=5): 5 _pthread_body Sort by top of stack, same collapsed (when >= 5): mach_msg_trap 285 select 95 semaphore_wait_signal_trap 95 WebCore::Position::downstream() const 37 WebCore::Position::upstream() const 19 WebCore::Position::inRenderedText() const 15 WebCore::RenderText::caretMaxRenderedOffset() const 12 WebCore::InlineTextBox::containsCaretOffset(int) const 9 Sample analysis of process 330 written to file /dev/stdout Sampling process 330 each 10 msecs 100 times
Attachments
Add attachment
proposed patch, testcase, etc.
Mark Rowe (bdash)
Comment 1
2007-07-06 10:33:07 PDT
It only hangs for about 30 seconds on my machine, but that is clearly a lot longer than one would expect.
Mark Rowe (bdash)
Comment 2
2007-07-06 10:33:41 PDT
<
rdar://problem/5317143
>
Justin Garcia
Comment 3
2007-07-06 10:57:50 PDT
Dupe of <
rdar://problem/5195056
>
Justin Garcia
Comment 4
2007-11-01 16:11:23 PDT
r27369
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