[poppler] Stroke color of type 3 fonts
Carlos Garcia Campos
carlosgc at gnome.org
Thu Jun 19 01:47:40 PDT 2008
El mié, 18-06-2008 a las 15:10 -0400, Jeff Muizelaar escribió:
> On Wed, Jun 18, 2008 at 11:39:20AM -0700, Michael Vrable wrote:
> > I'm now seeing a crash with some PDFs in evince, and reverting this
> > patch fixes them. The error I'm seeing is
> >
> > evince: cairo-pattern.c:679: cairo_pattern_destroy: Assertion
> > `((*&(&pattern->ref_count)->ref_count) > 0)' failed.
> >
> > My guess is that reference counts are not being updated on
> > fill_pattern/stroke_pattern when they are temporarily changed; if the
> > Type3 font happens to explicitly set the color, then the reference
> > counts can be corrupted.
> >
> > Additionally, I believe it may be possible to have a Type3 font nested
> > inside another Type3 font, but using a single member variable to save
> > the old stroke color is not reentrant.
> >
> > Fortunately, calls to beginType3Char/endType3Char are already wrapped in
> > calls to saveState/restoreState, so we don't need to save and restore
> > the stroke color in the Cairo backend--that will happen automatically.
> > This allows the code to be simplified.
> >
> > We should still set the stroke pattern to the current fill pattern. Do
> > that, but with proper reference counting.
> >
> > Patch is attached.
>
> Looks good to me.
>
> Can someone commit it?
Yes, done :-)
> I haven't fixed my commit access otherwise I'd
> commit it myself.
>
> -Jeff
> _______________________________________________
> poppler mailing list
> poppler at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/poppler
--
Carlos Garcia Campos
elkalmail at yahoo.es
carlosgc at gnome.org
http://carlosgc.linups.org
PGP key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x523E6462
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Esta parte del mensaje =?ISO-8859-1?Q?est=E1?= firmada
digitalmente
Url : http://lists.freedesktop.org/archives/poppler/attachments/20080619/b16790b9/attachment.pgp
More information about the poppler
mailing list