On May 13, 2008, at 13:44, Andreas Delmelle wrote:
> On May 13, 2008, at 13:18, Adrian Cumiskey wrote:
>> The following test still fails as part of the
>> LayoutEngineTestSuite :-
>>
>> wrapper_block.xml Error Expected w=14400 at position 0 but got: 0
>> (element-list category=breaker)
>>
>> java.lang.RuntimeException: Expected w=14400 at position 0 but
>> got: 0 (element-list category=breaker)
>
> Ouch! I had put the check in question in comment here :S
>
> Forgot to get back to this, since the other checks for this test
> all passed. It is related to the fact that an fo:wrapper now
> generates a Block instead of an Inline area, if it appears as a
> child of the fo:flow or a fo:block-container. (see also: r654111)
>
> I'll change the check (as soon as I figure out what the current
> expected result should be...)
FWIW: The test should pass now. I'm not 100% certain whether the
change is correct, but the element-list we get has the box we're
looking for at position 3 (index 2), so I simply skipped the first
two elements in the list...
Issue is related to the change in FlowLM:
@@ -75,7 +76,8 @@
- if (curLM instanceof InlineLevelLayoutManager) {
+ if (!(curLM instanceof WrapperLayoutManager)
+ && curLM instanceof InlineLevelLayoutManager) {
This check was once added to avoid ClassCastExceptions, IIRC, but
since the validation of fo:wrappers containing inline-content now
happens at parse-time, the FlowLM does not need to check this
anymore. This apparently does result in extra elements in the
breaker's element-list...
Cheers
Andreas