diff options
author | Jay Berkenbilt <ejb@ql.org> | 2012-06-27 05:09:32 +0200 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2012-06-27 12:48:06 +0200 |
commit | 2266c6232b2ffd34c78c1924c1d7d3b932ea4a29 (patch) | |
tree | 1dd86def7878d8251c84b6a9cc0ef3241547c5dd /include | |
parent | 736bafbb9ca645fc8662d9d05f5a72a2e6185e75 (diff) | |
download | qpdf-2266c6232b2ffd34c78c1924c1d7d3b932ea4a29.tar.zst |
Rework InputSource::readLine to make it much more efficient
This rework makes xref reconstruction run much faster and use much
less memory.
Diffstat (limited to 'include')
-rw-r--r-- | include/qpdf/QPDF.hh | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/qpdf/QPDF.hh b/include/qpdf/QPDF.hh index 7849cb76..93927a50 100644 --- a/include/qpdf/QPDF.hh +++ b/include/qpdf/QPDF.hh @@ -433,8 +433,9 @@ class QPDF void setLastOffset(qpdf_offset_t); qpdf_offset_t getLastOffset() const; - std::string readLine(); + std::string readLine(size_t max_line_length); + virtual qpdf_offset_t findAndSkipNextEOL() = 0; virtual std::string const& getName() const = 0; virtual qpdf_offset_t tell() = 0; virtual void seek(qpdf_offset_t offset, int whence) = 0; @@ -453,6 +454,7 @@ class QPDF void setFilename(char const* filename); void setFile(char const* description, FILE* filep, bool close_file); virtual ~FileInputSource(); + virtual qpdf_offset_t findAndSkipNextEOL(); virtual std::string const& getName() const; virtual qpdf_offset_t tell(); virtual void seek(qpdf_offset_t offset, int whence); @@ -477,6 +479,7 @@ class QPDF BufferInputSource(std::string const& description, Buffer* buf, bool own_memory = false); virtual ~BufferInputSource(); + virtual qpdf_offset_t findAndSkipNextEOL(); virtual std::string const& getName() const; virtual qpdf_offset_t tell(); virtual void seek(qpdf_offset_t offset, int whence); |