Files
ElyOffice/tasks/reviews/C11.8-r2.md
T

6 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
FAIL
crates/ely-pdf-engine/shim/ely_mupdf.c:103 — 打开扫描只缓存对象,恢复判定只采用结构修复标记,内容流读取错误会被当作正常、可覆盖保存的文件,违反 PDF-14 及错误须暴露的规则。具体场景:文件的 xref、对象偏移和流长度均正确,带 /Filter /FlateDecode 的页面内容流为 `not a zlib stream`。真实 worker 输出 `zlib error: incorrect header check`、`read error; treating as end of file`,文字导出却返回成功并生成空文件,修复报告为空。应用探针确认 risk=None、repair=None;旋转后执行 Save,损坏原件从 582 字节变为 593 字节,原件保留断言失败。证据:/tmp/ely-c118-r2-malformed.log、/tmp/ely-c118-r2-corrupt-app.log。修复方向:将内容流解码及页面读取失败纳入加载、恢复风险和错误报告,输出遇读取失败须返回错误;此类损坏会话须保留原件,保存使用独立副本。回归覆盖有效 xref 配合损坏压缩内容流。
crates/ely-pdf-engine/src/bin/ely-pdf-worker/output.rs:116 — PRINT_COPY 复用普通保存并保留加密,系统打印端收到锁定副本,违反 PDF-13。具体场景:PDF 设置非空打开密码 `user`、所有者密码 `owner`,仅允许 PRINT;worker 解锁成功、权限为 PRINT,print_copy 返回成功,但生成的 print.pdf 在 PDFKit 中 isLocked=true,创建打印操作返回空,ely_platform::print::print_pdf 因而报 `no print operation`,打印面板无法打开。对照确认普通 PDF 可创建打印操作,同一 print.pdf 用 `user` 解锁后也可创建。证据:/tmp/ely-c118-r2-encrypted-print.log、/tmp/ely-c118-r2-print-control.log。修复方向:通过 PRINT 权限核验后生成仅供打印的已解密临时副本,普通保存继续保留原加密;回归覆盖非空打开密码及 PDFKit 创建打印操作。