Bug 27193

Summary: run-ins that don't run in don't become blocks
Product: WebKit Reporter: Boris Zbarsky <bzbarsky>
Component: Layout and RenderingAssignee: Dave Hyatt <hyatt>
Status: RESOLVED FIXED    
Severity: Normal CC: bdakin
Priority: P2 Keywords: HasReduction, InRadar
Version: 528+ (Nightly build)   
Hardware: PC   
OS: OS X 10.5   
URL: http://www.w3.org/TR/2009/CR-CSS2-20090423/visuren.html#run-in
Attachments:
Description Flags
Testcase
none
Patch aroben: review+

Description Boris Zbarsky 2009-07-12 13:25:12 PDT
Created attachment 32632 [details]
Testcase

Spec link in the url field.

BUILD: Safari 4 or the 2009-07-12 Webkit nightly, both on mac.

STEPS TO REPRODUCE: Load attached testcase

EXPECTED RESULTS: Six lines of text, with the numbers 1 through 6 on them, one per line

ACTUAL RESULTS: Four lines of text; the first one has "1 2" on it, while the third has "45".

It looks like rule 3 of section 9.2.3 is just not implemented.
Comment 1 Mark Rowe (bdash) 2009-07-12 15:18:26 PDT
<rdar://problem/7052061>
Comment 2 Dave Hyatt 2009-07-15 13:33:34 PDT
Created attachment 32802 [details]
Patch
Comment 3 Adam Roben (:aroben) 2009-07-15 13:40:28 PDT
Comment on attachment 32802 [details]
Patch

> -    RenderBlock* blockRunIn = toRenderBlock(child);
>      // Get the next non-positioned/non-floating RenderBlock.
> +    RenderBlock* blockRunIn = toRenderBlock(child);

This change doesn't really seem necessary, but I also hardly care about it at all.


> +++ LayoutTests/fast/runin/generated.html	(working copy)
> @@ -9,5 +9,5 @@
>      Generated content with display: run-in causes a crash</i>.
>  </p>
>  <div id="target">
> -    &lt; this should say &ldquo;PASS&rdquo;
> +   <div> &lt; this should say &ldquo;PASS&rdquo;</div>
>  </div>

Is this still testing the thing that caused the crash before?

r=me
Comment 4 Dave Hyatt 2009-07-15 13:44:06 PDT
Fixed in r45941.