I've had look at the code (in poppler/ not glib/ i'll leave that to the
glib/ experts) and have some minor and some major comments.

Minor: 
 * There's 3 use of malloc i could find, for completion i guess it's better if 
you use gmalloc
 * SigStatusStruct should be a C++ class

Medium:
 * I'm not convinced getSigningTime should return a char *, i'd very much 
prefer it returning an integer and shifting the responsability to turn it into 
a string to upper layers, since allows for translations, etc.

Major:
 * There's lots of repeated code (the loops searching for "Annot"+"Sig" some of 
these with more checks for nulls than others) and some functions that make no 
sense in PDFDoc like Object *getByteRange(int index);

If you see in Form::Form we're already parsing "Fields" and creating
FormFieldSignature for each "Sig" object.

My suggestion is that you expand FormFieldSignature with your
implementation.

That also solves API issues like for for example getSignerName should
not be in PDFDoc since you need to have called validateSignature before
and then it returns the signer name for the signature of that index, so
it should be part of a signature object, i.e. FormFieldSignature.

Do you think it makes sense?

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to evince in Ubuntu.
https://bugs.launchpad.net/bugs/1085526

Title:
  ubuntu pdf doc viewer will not let me sign a document

Status in Poppler:
  Confirmed
Status in evince package in Ubuntu:
  Triaged

Bug description:
  Just updated in last few weeks, i think ubuntu 12.4

  To sign the document i have to send it to my neighbors windows
  computer, open it, sign it, then send it, then I get a note from echo
  sign that the document was sent with my signature.

  ProblemType: Bug
  DistroRelease: Ubuntu 11.10
  Package: evince 3.2.1-0ubuntu2.3
  ProcVersionSignature: Ubuntu 3.0.0-27.44-generic 3.0.45
  Uname: Linux 3.0.0-27-generic i686
  ApportVersion: 1.23-0ubuntu4
  Architecture: i386
  Date: Fri Nov 30 18:13:25 2012
  ExecutablePath: /usr/bin/evince
  InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Release i386 (20110427.1)
  ProcEnviron:
   PATH=(custom, no user)
   LANG=en_US.UTF-8
   SHELL=/bin/bash
  SourcePackage: evince
  UpgradeStatus: Upgraded to oneiric on 2012-11-18 (12 days ago)

To manage notifications about this bug go to:
https://bugs.launchpad.net/poppler/+bug/1085526/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : desktop-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to