[poppler] [PATCH] Add setContents() to modify the annot contents

Albert Astals Cid aacid at kde.org
Mon Apr 20 12:56:21 PDT 2009


A Dilluns, 20 d'abril de 2009, Carlos Garcia Campos va escriure:
> El dom, 19-04-2009 a las 23:41 +0200, Albert Astals Cid escribió:
> > A Dissabte, 18 d'abril de 2009, Carlos Garcia Campos va escriure:
> > > Hi all,
> > >
> > > we are still lacking write support in annotations. This patch, to be
> > > able to modify the contents of an annotation, it's just a first step.
> > >
> > > ok to commit?
> >
> > contents = new GooString(new_content);
> >
> > crashes if new_content is null, so you either protect this or remove the
> > protection in
>
> fair enough. It makes me wonder what should we do in this case, I mean,
> the Contents field is optional in the annotation array, should we remove
> the key from the dict when NULL is set? or shouldn't we even allow
> passing NULL to setContents()?

I just would mark on the header that passing a NULL value to set contents is 
not ok, if you want to clear something just pass GooString() and that's all

>
> > if (new_content && !contents->hasUnicodeMarker()) {
> >
> > I think obj1 is missing a free().
>
> No, because it's owned by the Dict.

Right, i got tricked thinking that operator= in Object was the same as copy.

>
> > Also you should probably update the modified member too.
>
> What do you mean with the modified member?

GooString *modified; inside class Annot.

Albert

>
> > Otherwise it think this can't hurt to let it go in :D
>
> Great, I'll commit it when I know what to do with the NULL case.
>
> Thanks.
>
> > Albert
> > _______________________________________________
> > poppler mailing list
> > poppler at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/poppler




More information about the poppler mailing list