https://bugs.documentfoundation.org/show_bug.cgi?id=84394

--- Comment #9 from Giuseppe Bilotta <[email protected]> ---
That commit seems to be the issue indeed. Or more specifically, the call to
SetCellAnchoredFromPosition if bPageAnchor is false.

In the specific case, the flags read from the xls have a value of 0x02 (not
sure about the meaning), so bPageAnchor is set to fallse, and the call to
SetCellAnchoredFromPosition gives completely bogus results:

setting cell anchor from position
anchor: maStart (0, 0, 0)
    maEnd (0, 0, 0)
    maStartOffset (0, 0)
    maEndOffset (-32767, -32767)
    meType 3
    maLastRect (0, 0, -32767, -32767)
anchor: maStart (0, 0, 0)
    maEnd (0, 0, 0)
    maStartOffset (0, 0)
    maEndOffset (-32767, -32767)
    meType 3
    maLastRect (0, 0, -32767, -32767)

hence the object disappearance. Further looking into this, it seems that the
logic and snap rectangles for the object have values (0, 0, -32767, -32767),
which I assume indicate the rectangle is invalid.

Since the object actually displays correctly when the XLS is loaded in Calc, I
assume that what happens is that the anchoring is being done too early, before
the object rectangle is correctly determined. I've tried moving the
SetCellAnchoredFromPosition call to after PreProcessSdrObject within
XclImpDffConverted::ProcessObj, but this doesn't fix it. I'm afraid I don't
know enough about the internals of LO to see where the call should be moved to
ensure its correctness though.

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs

Reply via email to