Gitea #9. Patch 0049 moves inline pictures and OLE objects with their run's w:position. Patches 0050 and 0051 turn EQ fields into Math objects; unreadable fields show their code. Round 3 findings (lowercase \s\do tail, split subscripts, \ai/\di, italics through OMML) fixed and covered by word.rs; no fourth review. Co-Authored-By: Claude <noreply@anthropic.com>
2.7 KiB
FAIL
-
patches/libreoffice/0050-writer-eq-fields-as-formulas.patch:92 — [P1] Trimming the command without trimming its character-format vector shifts every formatting index. Reproduced against the rebuilt Windows worker by prepending one space to the EQ instruction in
word.docx: the expected italica₁₀/a₃becomesa1₀/a3, with the wrong characters italicized and the denominator's subscript lost. The parser already skips leading spaces; pass the original command, or adjust both inputs identically, and add this regression. Evidence:.work/r82-r1/probe.logandregression.log. -
patches/libreoffice/0050-writer-eq-fields-as-formulas.patch:395 — [P1] Secondary switch names remain case-sensitive, although Word field switches are case-insensitive (field syntax §2.16.1). Reproduced:
EQ \I\SU(1,5,x)imports as an integral, whereasEQ \i\su(1,5,x)imports as a sum;\A\CO2(a,b,c,d)becomes a four-row column instead of a two-by-two array. This silently changes mathematical meaning. Normalize secondary switch names before interpreting them and test uppercase and mixed-case spellings. Evidence:.work/r82-r1/probe.log. -
patches/libreoffice/0050-writer-eq-fields-as-formulas.patch:266 — [P2] Parse failures disappear without the promised diagnostic in the shipped kernel.
fail()only usesSAL_WARN, which this Windows release build compiles out (ENABLE_SAL_LOGis empty); the empty result is then discarded at lines 93–94. Reproduced withEQ \f(a): loading and saving both succeed, the field disappears, and worker stderr contains no EQ diagnostic even withSAL_LOG=+INFO.writerfilter.dmapper. This violates the error-exposure rule and the R8.2 documentation's logging claim. Propagate failure through an import warning/error observable in release builds and add a failure-path test. Evidence:.work/r82-r1/regression.log,worker.log, andreview.log. -
patches/libreoffice/0050-writer-eq-fields-as-formulas.patch:95 — [P2] The new
SAL_INFOstatement logs the complete formula, including document text. With a logging-enabled kernel andSAL_LOG=+INFO.writerfilter.dmapperor a correspondingSAL_LOG_FILE, opening a field such asEQ \f(PrivateAmount,PrivateDivisor)writes both operands into the native diagnostic log. This violates rule 4's prohibition on logging document contents. Remove the formula payload from the diagnostic. -
patches/libreoffice/0050-writer-eq-fields-as-formulas.patch:517 — [P3] This newly added file has 517 lines, exceeding the explicit 500-line file limit. Split the diff into smaller ordered patches while preserving all changes and their application order.