Bug 152038

Summary: assert and mangled/missing field on import from docx (structured document tag?)
Product: LibreOffice Reporter: Caolán McNamara <caolan.mcnamara>
Component: WriterAssignee: Not Assigned <libreoffice-bugs>
Status: NEW ---    
Severity: normal CC: michael.stahl, stephane.guillou, vasily.melenchuk, vmiklos
Priority: medium Keywords: bisected
Version: 7.3.7.2 release   
Hardware: All   
OS: All   
Whiteboard:
Crash report or crash signature: Regression By:
Bug Depends on:    
Bug Blocks: 107739    
Attachments: comparisons of word and LibreOffice 7.2 and 7.3
source document

Description Caolán McNamara 2022-11-14 10:52:45 UTC
Description:
The attached document asserts in dbgutil for me with:
sw/source/core/txtnode/swfont.cxx:1064: Size SwSubFont::GetTextSize_(SwDrawTextInfo &): Assertion `!"this is presumably dead code"'

Steps to Reproduce:
1. Load Document

Actual Results:
dbgutil build asserts, release build shows fieldname and tags as content

Expected Results:
Ideally, field result of "February 14, 2014" as seen in msword screenshot


Reproducible: Always


User Profile Reset: No

Additional Info:
screenshot of word, LibreOffice 7.2 and 7.3 attached.

bisect of the LibreOffice 7.2 to 7.3 changes gives:

commit a4432eb0946c0bc775b3d30b634bef5d66544f8d
Date:   Wed Nov 24 14:50:12 2021 +0300

    tdf#104823: support for sdt plain text fields
    
    This is a squashed commit containing set of changes:
Comment 1 Caolán McNamara 2022-11-14 10:53:30 UTC
Created attachment 183585 [details]
comparisons of word and LibreOffice 7.2 and 7.3
Comment 2 Caolán McNamara 2022-11-14 10:53:51 UTC
Created attachment 183586 [details]
source document
Comment 3 Miklos Vajna 2022-11-14 11:11:35 UTC
Yes, I can reproduce the problem. The document has an <w:sdt> but then inside that, there is a FORMTEXT field.

Additionally, the assert is added in commit 19a559b0ec9b806519c405651d6d2b2e14712b4a (sw: SwSubFont::GetTextSize_() assert on presumably dead code, 2019-10-14), perhaps Michael S and Vasily should agree if that assert is valid or not.
Comment 4 Vasily Melenchuk (CIB) 2022-11-17 11:36:11 UTC
Problem was also reproduced.
Not sure about assert by itself: it looks unrelated, because we have problems much earlier during insertion of field into sdt field: this wasn't expected.

No suggestions on fixing yet.