[poppler] Fix rare segmentation fault in CID font vertical exceptions assignment
Albert Astals Cid
aacid at kde.org
Wed Apr 15 15:03:04 PDT 2009
A Dimecres, 15 d'abril de 2009, Peter Kerzum va escriure:
> Good morning!
>
> While using xpdf we encountered an error that applies both to xpdf and
> poppler. It seems to be a result of unattended copy-paste - index of
> horizontal exception is applied to vertical
>
> Please consider applying the following patch:
>
> --- a/GfxFont.cc
> +++ b/GfxFont.cc
> @@ -1590,11 +1590,11 @@ GfxCIDFont::GfxCIDFont(XRef *xref, char *tagA, Ref
> idA, GooString *nameA,
> if (obj3.arrayGet(k, &obj4)->isNum() &&
> obj3.arrayGet(k+1, &obj5)->isNum() &&
> obj3.arrayGet(k+2, &obj6)->isNum()) {
> - widths.excepsV[widths.nExceps].first = j;
> - widths.excepsV[widths.nExceps].last = j;
> - widths.excepsV[widths.nExceps].height = obj4.getNum() * 0.001;
> - widths.excepsV[widths.nExceps].vx = obj5.getNum() * 0.001;
> - widths.excepsV[widths.nExceps].vy = obj6.getNum() * 0.001;
> + widths.excepsV[widths.nExcepsV].first = j;
> + widths.excepsV[widths.nExcepsV].last = j;
> + widths.excepsV[widths.nExcepsV].height = obj4.getNum() * 0.001;
> + widths.excepsV[widths.nExcepsV].vx = obj5.getNum() * 0.001;
> + widths.excepsV[widths.nExcepsV].vy = obj6.getNum() * 0.001;
> ++j;
> ++widths.nExcepsV;
> } else {
Can we get a sample PDF that has this problem?
Albert
More information about the poppler
mailing list