You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Maruan Sahyoun (Jira)" <ji...@apache.org> on 2026/04/24 10:02:00 UTC

[jira] [Comment Edited] (PDFBOX-6162) Reuse of symbol context not properly supported

    [ https://issues.apache.org/jira/browse/PDFBOX-6162?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18075963#comment-18075963 ] 

Maruan Sahyoun edited comment on PDFBOX-6162 at 4/24/26 10:01 AM:
------------------------------------------------------------------

[~tilman]  this now works for me which brings us to a single failing file. The main issue apart from the initialization was the {{this.cx = sd.cx}} assignment so that the new {{CX}} instance corrupted the old one. The failure with {{EXRUNLENGTH}} was an accumulation while running trough the various segments. Took me quite a while to spot this unfortunately.


was (Author: msahyoun):
[~tilman]  this now works for me which brings us to a single failing file. The main issue apart from the initialization was the {{this.cx = sd.cx}} assignment so that the new {{CX}} instance corrupted the old one. The failure with {{EXRUNLENGTH}} was an accumulation while running trough the various segments.

> Reuse of symbol context not properly supported
> ----------------------------------------------
>
>                 Key: PDFBOX-6162
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-6162
>             Project: PDFBox
>          Issue Type: Sub-task
>          Components: JBIG2
>    Affects Versions: 3.0.4 JBIG2
>            Reporter: Tilman Hausherr
>            Priority: Major
>         Attachments: bitmap-symbol-context-reuse.pdf
>
>
> .ArrayIndexOutOfBoundsException: Index 2 out of bounds for length 2
> 	at org.apache.pdfbox.jbig2.segments.SymbolDictionary.getToExportFlags(SymbolDictionary.java:898)
> 	at org.apache.pdfbox.jbig2.segments.SymbolDictionary.getDictionary(SymbolDictionary.java:467)
> 	at org.apache.pdfbox.jbig2.segments.SymbolDictionary.retrieveImportSymbols(SymbolDictionary.java:990)
> 	at org.apache.pdfbox.jbig2.segments.SymbolDictionary.setInSyms(SymbolDictionary.java:267)
> 	at org.apache.pdfbox.jbig2.segments.SymbolDictionary.parseHeader(SymbolDictionary.java:130)
> 	at org.apache.pdfbox.jbig2.segments.SymbolDictionary.init(SymbolDictionary.java:1025)
> 	at org.apache.pdfbox.jbig2.SegmentHeader.getSegmentData(SegmentHeader.java:380)
> Considering the name of the file, I assume this means we don't support the reuse of symbols correctly. The file has at least 4 different symbol segments. From what I see on
> https://github.com/SerenityOS/serenity/blob/master/Tests/LibGfx/test-inputs/jbig2/json/bitmap-symbol-context-reuse.json
> the text segment refers to the symbols of the 4 previous symbol segments, and the symbol segments indicate some logic to retain the symbols of previous segments, so one will have to investigate what happens.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@pdfbox.apache.org
For additional commands, e-mail: dev-help@pdfbox.apache.org