1. 22 Aug, 2019 2 commits
    • Marek Kasik's avatar
      DecryptStream: Use Ref instead of two integers · 8f79db34
      Marek Kasik authored
      Follow the changes introduced before also in this new code.
      8f79db34
    • Marek Kasik's avatar
      Decrypt: Implement crypto functions using NSS · b1502076
      Marek Kasik authored
      This commit moves DecryptStream and EncryptStream
      classes to their own source files so that they can
      have different implementations. Hash functions
      md5(), sha256(), sha384() and sha512() are also placed
      to these source files to allow different implementations.
      There is internal implementation of them
      in DecryptStream.{cc|h} and the NSS one
      in DecryptStreamNSS.{cc|h}.
      
      This commit also adds some new functions for usage
      in functions Decrypt::makeFileKey(), Decrypt::makeFileKey2()
      and revision6Hash().
      These are rc4DecryptArray(), aesDecryptArray() and
      aesEncryptArray().
      
      setNSSDir() function had to be moved to its own source files
      NSS.{cc|h} to have consistent initialization of NSS over
      all functions which needs it.
      b1502076
  2. 21 Aug, 2019 20 commits
  3. 20 Aug, 2019 1 commit
  4. 13 Aug, 2019 3 commits
  5. 10 Aug, 2019 1 commit
  6. 08 Aug, 2019 2 commits
  7. 05 Aug, 2019 1 commit
  8. 01 Aug, 2019 2 commits
  9. 31 Jul, 2019 1 commit
  10. 21 Jul, 2019 1 commit
    • StefanBruens's avatar
      SplashXPathScanner: Optionally use small_vector from boost · 355fd8d5
      StefanBruens authored
      Currently, each row in the intersections vector is allocated separately,
      when the first intersection is added.
      
      To avoid these allocations for common simple polygons,
      boost::container::small_vector<4, T> is used, which stores up to
      4 intersections inline. small_vector is a header-only class.
      
      For the documents from #57 (fdo#96728) and #24 (fdo#78728), the
      runtime/memory is significantly reduced (according to /usr/bin/time -v):
      (1) $> pdftoppm -r 18 -aa no runsforever-poppler.pdf
      (2) $> pdftoppm surf-types.pdf
      
      Before/After
                                        runsforever-poppler |   surf-types
      User time (seconds):                2348.08 / 1773.53 |   7.76 /  5.02
      Maximum resident set size (kbytes):   46288 /   45896 |  14076 / 13748
      355fd8d5
  11. 20 Jul, 2019 1 commit
  12. 18 Jul, 2019 4 commits
  13. 17 Jul, 2019 1 commit