Summary: | PageLabelInfo::indexToLabel prepends UTF-16 BOM | ||
---|---|---|---|
Product: | poppler | Reporter: | Christian Persch (GNOME) <chpe> |
Component: | general | Assignee: | poppler-bugs <poppler-bugs> |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | critical | ||
Priority: | high | CC: | nshmyrev |
Version: | unspecified | ||
Hardware: | x86 (IA32) | ||
OS: | Linux (All) | ||
URL: | http://www.universetoday.com/365days.pdf | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Christian Persch (GNOME)
2006-02-19 05:30:26 UTC
That GooString need to be changed to UGooString Hmm... GooString label; switch (prop_id) { case PROP_LABEL: page->document->doc->getCatalog ()->indexToLabel (page->index, &label); g_value_set_string (value, label.getCString()); page->document is PopplerDocument ->doc is PDFDoc * ->getCatalog() is Catalog * and Catalog::indexToLabel takes a GooString not a UGooString, so this is *not* a problem in the glib layer. --- I've follow it further down to PageLabelInfo::indexToLabel where for index=4 (the fith call when opening the testcase with evince), line 308: label->append(interval->prefix); appends the BOM to |label|: (gdb) x /2x interval->prefix 0x82cf2d0: 0xfe 0xff so the problem is either that PageLabelInfo::indexToLabel appends the interval->prefix unconverted, or that it is stored that way in ::prefix in the first place ( -> back to general ? i just said GooString needs to be changed to UGooString, obviously in the PageLabelInfo. I really did not want to change it to the glib frontend component, just a mistake there ;-) Fixed in cvs. |
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.