elcuervo / firma

Adds a secure signature to pdf
MIT License
5 stars 0 forks source link

Unable to sign a couple of pdfs #1

Open tramuntanal opened 9 years ago

tramuntanal commented 9 years ago

When signing a PDF file an Exception raises. This same exception happens with 2 different pdf form files. This is what I do:

irb(main):008:0> require 'firma'
irb(main):008:0> keys = Firma.generate_keys("passphrase")
irb(main):008:0> Firma.sign('Solicitud_Dictamen_CA.pdf',key: keys.fetch(:key),
irb(main):009:1* key: keys.fetch(:key),
irb(main):010:1*     passphrase: "passphrase",
irb(main):011:1*     certificate: keys.fetch(:certificate)
irb(main):012:1>   )
[info ] ...Reading header...
[info ] ...Parsing revision 1...
[info ] ...Parsing xref table...
[info ] Warning: Unable to parse xref table! Xrefs might be stored into an XRef stream.
[info ] ...Parsing trailer...
[info ] ...Parsing revision 2...
[info ] ...Parsing xref table...
[info ] Warning: Unable to parse xref table! Xrefs might be stored into an XRef stream.
[info ] ...Parsing trailer...
[info ] Warning: Found a XRefStream for this revision at 43 0 R
[info ] Warning: This file has been linearized.
[info ] ...Propagating types...
NoMethodError: undefined method `[]=' for nil:NilClass
    from /home/oliver/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/origami-1.2.7/lib/origami/trailer.rb:152:in `[]='
    from /home/oliver/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/origami-1.2.7/lib/origami/object.rb:138:in `block in define_field_methods'
    from /home/oliver/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/origami-1.2.7/lib/origami/pdf.rb:1072:in `block in rebuild_dummy_xrefs'
    from /home/oliver/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/origami-1.2.7/lib/origami/pdf.rb:1063:in `each'
    from /home/oliver/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/origami-1.2.7/lib/origami/pdf.rb:1063:in `rebuild_dummy_xrefs'
    from /home/oliver/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/origami-1.2.7/lib/origami/signature.rb:218:in `sign'
    from /home/oliver/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/firma-0.0.1/lib/firma.rb:18:in `sign'
    from /home/oliver/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/firma-0.0.1/lib/firma.rb:32:in `sign'
    from (irb):8
    from /home/oliver/.rbenv/versions/2.1.1/bin/irb:11:in `<main>'
elcuervo commented 9 years ago

Mmm, the tests are not passing. I'll hate to take a look to see what broke with the gem update.