Use spancpy() on CFX_CodecMemory buffers.
Change-Id: If8a448420ff931d28ea6aaf2e6374ba176b7919b
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/109630
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
diff --git a/core/fxcodec/cfx_codec_memory.cpp b/core/fxcodec/cfx_codec_memory.cpp
index e3e1ffa..8ac15d5 100644
--- a/core/fxcodec/cfx_codec_memory.cpp
+++ b/core/fxcodec/cfx_codec_memory.cpp
@@ -4,10 +4,10 @@
#include "core/fxcodec/cfx_codec_memory.h"
-#include <string.h>
-
#include <algorithm>
+#include "core/fxcrt/span_util.h"
+
CFX_CodecMemory::CFX_CodecMemory(size_t buffer_size)
: buffer_(FX_Alloc(uint8_t, buffer_size)), size_(buffer_size) {}
@@ -26,7 +26,7 @@
return 0;
size_t bytes_to_read = std::min(buffer.size(), size_ - pos_);
- memcpy(buffer.data(), buffer_.get() + pos_, bytes_to_read);
+ fxcrt::spancpy(buffer, GetBufferSpan().subspan(pos_, bytes_to_read));
pos_ += bytes_to_read;
return bytes_to_read;
}
@@ -44,6 +44,5 @@
}
void CFX_CodecMemory::Consume(size_t consumed) {
- size_t unconsumed = size_ - consumed;
- memmove(buffer_.get(), buffer_.get() + consumed, unconsumed);
+ fxcrt::spanmove(GetBufferSpan(), GetBufferSpan().subspan(consumed));
}