• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 "core/fxcrt/check.h"
10 #include "core/fxcrt/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::checked_cast<unsigned long>(buffer.size())) != 0;
23 }
24