From 56fd93ba157009ee711d530b0b05a8f68d04f385 Mon Sep 17 00:00:00 2001 From: ap Date: Sat, 13 May 2006 16:28:31 +0000 Subject: [PATCH] 2006-05-13 Mitz Pettel Reviewed by Darin, landed by ap. - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8485 iExploder(#11705): Freeze in RenderBlock::layout() Test: fast/text/midword-break-hang.html * rendering/bidi.cpp: (WebCore::RenderBlock::findNextLineBreak): If this is a mid-word break, ignore breakOnlyAfterWhiteSpace. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14358 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- LayoutTests/ChangeLog | 12 +++++++++ .../text/midword-break-hang-expected.checksum | 1 + .../fast/text/midword-break-hang-expected.png | Bin 0 -> 20109 bytes .../fast/text/midword-break-hang-expected.txt | 23 ++++++++++++++++++ LayoutTests/fast/text/midword-break-hang.html | 13 ++++++++++ WebCore/ChangeLog | 13 ++++++++++ WebCore/rendering/bidi.cpp | 4 +-- 7 files changed, 64 insertions(+), 2 deletions(-) create mode 100644 LayoutTests/fast/text/midword-break-hang-expected.checksum create mode 100644 LayoutTests/fast/text/midword-break-hang-expected.png create mode 100644 LayoutTests/fast/text/midword-break-hang-expected.txt create mode 100644 LayoutTests/fast/text/midword-break-hang.html diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog index 4e8c7df8018f..767019562f88 100644 --- a/LayoutTests/ChangeLog +++ b/LayoutTests/ChangeLog @@ -1,3 +1,15 @@ +2006-05-13 Mitz Pettel + + Reviewed by Darin, landed by ap. + + - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=8485 + iExploder(#11705): Freeze in RenderBlock::layout() + + * fast/text/midword-break-hang-expected.checksum: Added. + * fast/text/midword-break-hang-expected.png: Added. + * fast/text/midword-break-hang-expected.txt: Added. + * fast/text/midword-break-hang.html: Added. + 2006-05-13 Rob Buis Reviewed by Darin, landed by ap. diff --git a/LayoutTests/fast/text/midword-break-hang-expected.checksum b/LayoutTests/fast/text/midword-break-hang-expected.checksum new file mode 100644 index 000000000000..838621013b56 --- /dev/null +++ b/LayoutTests/fast/text/midword-break-hang-expected.checksum @@ -0,0 +1 @@ +d9e6aa7254626a19ec6fa0eb2fb16e91 \ No newline at end of file diff --git a/LayoutTests/fast/text/midword-break-hang-expected.png b/LayoutTests/fast/text/midword-break-hang-expected.png new file mode 100644 index 0000000000000000000000000000000000000000..7484aed16f0d4e6b8c72e57b02550ad71f22cb41 GIT binary patch literal 20109 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 + + + + +

+ This is a regression test for http://bugzilla.opendarwin.org/show_bug.cgi?id=8485 + iExploder(#11705): Freeze in RenderBlock::layout(). +

+
+
+A
+ diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog index 33ccb633f261..e20ca897dc23 100644 --- a/WebCore/ChangeLog +++ b/WebCore/ChangeLog @@ -1,3 +1,16 @@ +2006-05-13 Mitz Pettel + + Reviewed by Darin, landed by ap. + + - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8485 + iExploder(#11705): Freeze in RenderBlock::layout() + + Test: fast/text/midword-break-hang.html + + * rendering/bidi.cpp: + (WebCore::RenderBlock::findNextLineBreak): If this is a mid-word break, + ignore breakOnlyAfterWhiteSpace. + 2006-05-13 Alexey Proskuryakov Fix release build. diff --git a/WebCore/rendering/bidi.cpp b/WebCore/rendering/bidi.cpp index ab13aca20e42..840501b44028 100644 --- a/WebCore/rendering/bidi.cpp +++ b/WebCore/rendering/bidi.cpp @@ -2258,10 +2258,10 @@ BidiIterator RenderBlock::findNextLineBreak(BidiIterator &start, BidiState &bidi if (o->style()->autoWrap() || breakWords) { // If we break only after white-space, consider the current character // as candidate width for this line. - int charWidth = o->style()->breakOnlyAfterWhiteSpace() ? + int charWidth = o->style()->breakOnlyAfterWhiteSpace() && !midWordBreak ? t->width(pos, 1, f, w + tmpW) + (applyWordSpacing ? wordSpacing : 0) : 0; if (w + tmpW + charWidth > width) { - if (o->style()->breakOnlyAfterWhiteSpace()) { + if (o->style()->breakOnlyAfterWhiteSpace() && !midWordBreak) { // Check if line is too big even without the extra space // at the end of the line. If it is not, do nothing. // If the line needs the extra whitespace to be too long, -- 2.36.0