Summary: | OutlineItem::readItemList blindly follows loops in outlines definitions | ||
---|---|---|---|
Product: | poppler | Reporter: | Nick Jones <nick.jones> |
Component: | general | Assignee: | poppler-bugs <poppler-bugs> |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | medium | ||
Version: | unspecified | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
add hash check for outlines section numbers
Add a lookup table for ref numbers already found in OutlineItem::readItemList Lookup table for reference numbers shared between Catalog and Outline |
Description
Nick Jones
2008-11-03 18:57:10 UTC
I was waiting until someone decided to create a CVE or something due to this, congratulations for being the one in the outside to notice and care :-) I'd like you to suggest a patch based on the same approach used in Catalog::readPageTree and alreadyRead It's probably more memory intensive but does not slow down things as much as yours does and given there's already one place where such construction is used memory usage is not a problem. Excuse my lazyness in getting back... I redid the original patch using your suggested method, against the sources for v0.10.4 It will be attached as : outlineitems_alreadyread.patch Having already made the first patch, I re-read your previous comment and noted the part: 'already one place where such construction is used' so I redid the patch once again, with a alreadyRead buffer shared between the Catalog and Outline objects, in case that is what you were hinting. It is a bit messy passing the buffer around though, I contemplated putting it in the XRef structure, but it seems this structure has not changed in many versions of poppler, so I assumed it is required to remain unchanged? Anyhow, I hope one of these patches is of use. Created attachment 23431 [details] [review] Add a lookup table for ref numbers already found in OutlineItem::readItemList Created attachment 23432 [details] [review] Lookup table for reference numbers shared between Catalog and Outline I've commited patch from comment #3, thanks a lot for the work :-) |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.