summaryrefslogtreecommitdiff
path: root/core/fpdfapi/parser/cpdf_reference.cpp
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2017-05-10 13:59:14 -0400
committerChromium commit bot <commit-bot@chromium.org>2017-05-10 19:41:00 +0000
commit5b590337e0778b49dd7092af4a283ed0f9c5a2e9 (patch)
tree4aae9dd27685bf2cca6954d5a1a7ef197466b808 /core/fpdfapi/parser/cpdf_reference.cpp
parentaa7022833db1a6e21b81fcca30b45ba652298f32 (diff)
downloadpdfium-5b590337e0778b49dd7092af4a283ed0f9c5a2e9.tar.xz
Store the offset in the archive buffer
This Cl moves the implementation of the archive buffer behind an IFX_ArchiveStream interface. The buffer holds the current offset and the offset parameter is removed from the CPDF_Creator and various other methods. Change-Id: Ia54e803b58bbfb6ef03fec4a940d2c056d541356 Reviewed-on: https://pdfium-review.googlesource.com/5255 Reviewed-by: Tom Sepez <tsepez@chromium.org> Commit-Queue: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'core/fpdfapi/parser/cpdf_reference.cpp')
-rw-r--r--core/fpdfapi/parser/cpdf_reference.cpp14
1 files changed, 3 insertions, 11 deletions
diff --git a/core/fpdfapi/parser/cpdf_reference.cpp b/core/fpdfapi/parser/cpdf_reference.cpp
index 560fd27934..ff0442b6f5 100644
--- a/core/fpdfapi/parser/cpdf_reference.cpp
+++ b/core/fpdfapi/parser/cpdf_reference.cpp
@@ -83,15 +83,7 @@ CPDF_Object* CPDF_Reference::GetDirect() const {
: nullptr;
}
-bool CPDF_Reference::WriteTo(CFX_FileBufferArchive* archive,
- FX_FILESIZE* offset) const {
- if (archive->AppendString(" ") < 0)
- return false;
- int32_t len = archive->AppendDWord(GetRefObjNum());
- if (len < 0)
- return false;
- if (archive->AppendString(" 0 R ") < 0)
- return false;
- *offset += len + 6;
- return true;
+bool CPDF_Reference::WriteTo(IFX_ArchiveStream* archive) const {
+ return archive->WriteString(" ") && archive->WriteDWord(GetRefObjNum()) &&
+ archive->WriteString(" 0 R ");
}