xref: /aosp_15_r20/external/pdfium/fpdfsdk/cpdfsdk_filewriteadapter.cpp (revision 3ac0a46f773bac49fa9476ec2b1cf3f8da5ec3a4)
1 // Copyright 2017 The PDFium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 
7 #include "fpdfsdk/cpdfsdk_filewriteadapter.h"
8 
9 #include "third_party/base/check.h"
10 #include "third_party/base/numerics/safe_conversions.h"
11 
CPDFSDK_FileWriteAdapter(FPDF_FILEWRITE * file_write)12 CPDFSDK_FileWriteAdapter::CPDFSDK_FileWriteAdapter(FPDF_FILEWRITE* file_write)
13     : file_write_(file_write) {
14   DCHECK(file_write_);
15 }
16 
17 CPDFSDK_FileWriteAdapter::~CPDFSDK_FileWriteAdapter() = default;
18 
WriteBlock(pdfium::span<const uint8_t> buffer)19 bool CPDFSDK_FileWriteAdapter::WriteBlock(pdfium::span<const uint8_t> buffer) {
20   return file_write_->WriteBlock(
21              file_write_, buffer.data(),
22              pdfium::base::checked_cast<unsigned long>(buffer.size())) != 0;
23 }
24