I was trying to make lists work in the most general situation when I
stumbled across this strange bug: it seems that the label-end() function
(implemented in fo/expr/labelEndFunction.java) does not compute the right
value.

It should compute the end-indent of a list-item-label, which is defined to
be (7.28.3)

  ipd of the reference area
  - (provisional-distance-between-starts
     + start-indent
     + start-intrusion-adjustment
     - provisional-label-separation)

It seems to me that the method LabelEndFunction.eval() computes rightly
the inner expression between the brackets, but fails to get the right
reference ipd.

The overall effect is that the end-indent stored inside a
CommonMarginBlock object is bigger than the available ipd, and the stack
limit set by the BlockLM for the LineLM is < 0.

Any idea about how to fix this (should it really be a bug)?

Regards
    Luca



Reply via email to