Commit 60d0ff6c72ad0435de916b049dca767335651ac2

Authored by m-holger
1 parent 20c2f021

Refactor `MD5` to add `std::string_view` support in `encodeDataIncrementally`, i…

…nline previously separate method, and streamline data encoding logic.
libqpdf/MD5.cc
... ... @@ -46,12 +46,6 @@ MD5::appendString(char const* input_string)
46 46 }
47 47  
48 48 void
49   -MD5::encodeDataIncrementally(char const* data, size_t len)
50   -{
51   - crypto->MD5_update(QUtil::unsigned_char_pointer(data), len);
52   -}
53   -
54   -void
55 49 MD5::encodeFile(char const* filename, qpdf_offset_t up_to_offset)
56 50 {
57 51 char buffer[1024];
... ...
libqpdf/qpdf/MD5.hh
... ... @@ -24,7 +24,20 @@ class MD5
24 24 void appendString(char const* input_string);
25 25  
26 26 // appends arbitrary data to current md5 object
27   - void encodeDataIncrementally(char const* input_data, size_t len);
  27 + void
  28 + encodeDataIncrementally(char const* input_data, size_t len)
  29 + {
  30 + crypto->MD5_update(reinterpret_cast<unsigned char*>(const_cast<char*>(input_data)), len);
  31 + }
  32 +
  33 + // appends arbitrary data to current md5 object
  34 + void
  35 + encodeDataIncrementally(std::string_view input_data)
  36 + {
  37 + crypto->MD5_update(
  38 + reinterpret_cast<unsigned char*>(const_cast<char*>(input_data.data())),
  39 + input_data.size());
  40 + }
28 41  
29 42 // computes a raw digest
30 43 void digest(Digest);
... ...