summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortsepez <tsepez@chromium.org>2016-10-24 10:19:11 -0700
committerCommit bot <commit-bot@chromium.org>2016-10-24 10:19:11 -0700
commitad2441ef675866eb84c7392eeda03391a5a5d474 (patch)
tree5b250139c65d5f440f3b544643b1fb85e23380dd
parentb674ebe6dd13288160ad8e324d719a124caf5a83 (diff)
downloadpdfium-chromium/2900.tar.xz
Rename IFX_ stream nameschromium/2900
It's been troubling for some time that an IFX_FileStream might actually be an in-memory buffer with no backing file. Review-Url: https://codereview.chromium.org/2443723002
-rw-r--r--core/fpdfapi/edit/cpdf_creator.h2
-rw-r--r--core/fpdfapi/edit/fpdf_edit_create.cpp6
-rw-r--r--core/fpdfapi/page/cpdf_image.cpp2
-rw-r--r--core/fpdfapi/page/cpdf_image.h8
-rw-r--r--core/fpdfapi/parser/cfdf_document.cpp6
-rw-r--r--core/fpdfapi/parser/cfdf_document.h6
-rw-r--r--core/fpdfapi/parser/cpdf_data_avail.cpp2
-rw-r--r--core/fpdfapi/parser/cpdf_data_avail.h6
-rw-r--r--core/fpdfapi/parser/cpdf_parser.cpp11
-rw-r--r--core/fpdfapi/parser/cpdf_parser.h12
-rw-r--r--core/fpdfapi/parser/cpdf_parser_unittest.cpp6
-rw-r--r--core/fpdfapi/parser/cpdf_stream.cpp2
-rw-r--r--core/fpdfapi/parser/cpdf_stream.h5
-rw-r--r--core/fpdfapi/parser/cpdf_syntax_parser.cpp2
-rw-r--r--core/fpdfapi/parser/cpdf_syntax_parser.h6
-rw-r--r--core/fpdfapi/parser/fpdf_parser_utility.cpp2
-rw-r--r--core/fpdfapi/parser/fpdf_parser_utility.h4
-rw-r--r--core/fxcodec/codec/ccodec_progressivedecoder.h6
-rw-r--r--core/fxcodec/codec/ccodec_tiffmodule.h4
-rw-r--r--core/fxcodec/codec/fx_codec_progress.cpp2
-rw-r--r--core/fxcodec/codec/fx_codec_tiff.cpp11
-rw-r--r--core/fxcrt/extension.h10
-rw-r--r--core/fxcrt/fx_basic.h4
-rw-r--r--core/fxcrt/fx_basic_buffer.cpp2
-rw-r--r--core/fxcrt/fx_ext.h2
-rw-r--r--core/fxcrt/fx_extension.cpp17
-rw-r--r--core/fxcrt/fx_stream.h59
-rw-r--r--core/fxcrt/fx_xml.h2
-rw-r--r--core/fxcrt/fx_xml_parser.cpp6
-rw-r--r--core/fxcrt/fxcrt_stream.cpp10
-rw-r--r--core/fxcrt/xml_int.h6
-rw-r--r--core/fxge/android/cfpf_skiafontmgr.cpp5
-rw-r--r--core/fxge/android/fpf_skiafontmgr.h5
-rw-r--r--core/fxge/fx_font.h2
-rw-r--r--core/fxge/ge/cfx_font.cpp7
-rw-r--r--fpdfsdk/cpdfsdk_formfillenvironment.cpp2
-rw-r--r--fpdfsdk/cpdfsdk_formfillenvironment.h2
-rw-r--r--fpdfsdk/fpdf_dataavail.cpp4
-rw-r--r--fpdfsdk/fpdfeditimg.cpp2
-rw-r--r--fpdfsdk/fpdfsave.cpp2
-rw-r--r--fpdfsdk/fpdfview.cpp7
-rw-r--r--fpdfsdk/fpdfxfa/cpdfxfa_app.cpp2
-rw-r--r--fpdfsdk/fpdfxfa/cpdfxfa_app.h2
-rw-r--r--fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp2
-rw-r--r--fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.h4
-rw-r--r--fpdfsdk/fsdk_define.h10
-rw-r--r--testing/libfuzzer/pdf_cfx_saxreader_fuzzer.cc5
-rw-r--r--testing/libfuzzer/xfa_codec_fuzzer.h2
-rw-r--r--xfa/fde/xml/cfx_saxreader.cpp4
-rw-r--r--xfa/fde/xml/cfx_saxreader.h8
-rw-r--r--xfa/fgas/crt/fgas_stream.cpp36
-rw-r--r--xfa/fgas/crt/fgas_stream.h10
-rw-r--r--xfa/fgas/font/fgas_gefont.h4
-rw-r--r--xfa/fgas/font/fgas_stdfontmgr.cpp27
-rw-r--r--xfa/fgas/font/fgas_stdfontmgr.h14
-rw-r--r--xfa/fxfa/app/xfa_checksum.cpp2
-rw-r--r--xfa/fxfa/app/xfa_ffapp.cpp2
-rw-r--r--xfa/fxfa/app/xfa_ffdoc.cpp11
-rw-r--r--xfa/fxfa/app/xfa_ffwidget.cpp4
-rw-r--r--xfa/fxfa/fm2js/xfa_fm2jscontext.cpp2
-rw-r--r--xfa/fxfa/fxfa.h7
-rw-r--r--xfa/fxfa/parser/cxfa_dataexporter.cpp10
-rw-r--r--xfa/fxfa/parser/cxfa_dataexporter.h6
-rw-r--r--xfa/fxfa/parser/cxfa_dataimporter.cpp2
-rw-r--r--xfa/fxfa/parser/cxfa_dataimporter.h4
-rw-r--r--xfa/fxfa/parser/cxfa_document_parser.cpp2
-rw-r--r--xfa/fxfa/parser/cxfa_document_parser.h4
-rw-r--r--xfa/fxfa/parser/cxfa_node.cpp2
-rw-r--r--xfa/fxfa/parser/cxfa_simple_parser.cpp2
-rw-r--r--xfa/fxfa/parser/cxfa_simple_parser.h6
-rw-r--r--xfa/fxfa/xfa_checksum.h2
-rw-r--r--xfa/fxfa/xfa_ffapp.h6
-rw-r--r--xfa/fxfa/xfa_ffdoc.h8
-rw-r--r--xfa/fxfa/xfa_ffwidget.h2
74 files changed, 255 insertions, 226 deletions
diff --git a/core/fpdfapi/edit/cpdf_creator.h b/core/fpdfapi/edit/cpdf_creator.h
index 5de3793eb5..8b0efdd309 100644
--- a/core/fpdfapi/edit/cpdf_creator.h
+++ b/core/fpdfapi/edit/cpdf_creator.h
@@ -32,7 +32,7 @@ class CPDF_Creator {
~CPDF_Creator();
void RemoveSecurity();
- bool Create(IFX_StreamWrite* pFile, uint32_t flags = 0);
+ bool Create(IFX_WriteStream* pFile, uint32_t flags = 0);
int32_t Continue(IFX_Pause* pPause = nullptr);
FX_BOOL SetFileVersion(int32_t fileVersion = 17);
diff --git a/core/fpdfapi/edit/fpdf_edit_create.cpp b/core/fpdfapi/edit/fpdf_edit_create.cpp
index e5b1fe1bb0..b4e1157d9e 100644
--- a/core/fpdfapi/edit/fpdf_edit_create.cpp
+++ b/core/fpdfapi/edit/fpdf_edit_create.cpp
@@ -1482,7 +1482,7 @@ int32_t CPDF_Creator::WriteDoc_Stage1(IFX_Pause* pPause) {
InitOldObjNumOffsets();
m_iStage = 20;
} else {
- IFX_FileRead* pSrcFile = m_pParser->GetFileAccess();
+ IFX_SeekableReadStream* pSrcFile = m_pParser->GetFileAccess();
m_Offset = pSrcFile->GetSize();
m_Pos = (void*)(uintptr_t)m_Offset;
m_iStage = 15;
@@ -1490,7 +1490,7 @@ int32_t CPDF_Creator::WriteDoc_Stage1(IFX_Pause* pPause) {
}
if (m_iStage == 15) {
if ((m_dwFlags & FPDFCREATE_NO_ORIGINAL) == 0 && m_Pos) {
- IFX_FileRead* pSrcFile = m_pParser->GetFileAccess();
+ IFX_SeekableReadStream* pSrcFile = m_pParser->GetFileAccess();
uint8_t buffer[4096];
uint32_t src_size = (uint32_t)(uintptr_t)m_Pos;
while (src_size) {
@@ -1907,7 +1907,7 @@ void CPDF_Creator::Clear() {
m_pIDArray.reset();
}
-bool CPDF_Creator::Create(IFX_StreamWrite* pFile, uint32_t flags) {
+bool CPDF_Creator::Create(IFX_WriteStream* pFile, uint32_t flags) {
m_File.AttachFile(pFile);
return Create(flags);
}
diff --git a/core/fpdfapi/page/cpdf_image.cpp b/core/fpdfapi/page/cpdf_image.cpp
index 50768c5058..b40bc3ca8e 100644
--- a/core/fpdfapi/page/cpdf_image.cpp
+++ b/core/fpdfapi/page/cpdf_image.cpp
@@ -123,7 +123,7 @@ CPDF_Dictionary* CPDF_Image::InitJPEG(uint8_t* pData, uint32_t size) {
return pDict;
}
-void CPDF_Image::SetJpegImage(IFX_FileRead* pFile) {
+void CPDF_Image::SetJpegImage(IFX_SeekableReadStream* pFile) {
uint32_t size = (uint32_t)pFile->GetSize();
if (!size)
return;
diff --git a/core/fpdfapi/page/cpdf_image.h b/core/fpdfapi/page/cpdf_image.h
index 72de0d8cef..1e6f70fa33 100644
--- a/core/fpdfapi/page/cpdf_image.h
+++ b/core/fpdfapi/page/cpdf_image.h
@@ -16,14 +16,14 @@
#define PDF_IMAGE_MASK_LOSSY_COMPRESS 0x0004
#define PDF_IMAGE_MASK_LOSSLESS_COMPRESS 0x0008
-class CFX_DIBitmap;
class CFX_DIBSource;
+class CFX_DIBitmap;
class CPDF_Dictionay;
class CPDF_Document;
class CPDF_Page;
-class IFX_FileRead;
-class IFX_FileWrite;
class IFX_Pause;
+class IFX_SeekableReadStream;
+class IFX_SeekableWriteStream;
class CPDF_Image {
public:
@@ -56,7 +56,7 @@ class CPDF_Image {
FX_BOOL bLoadMask = FALSE) const;
void SetImage(const CFX_DIBitmap* pDIBitmap, int32_t iCompress);
- void SetJpegImage(IFX_FileRead* pFile);
+ void SetJpegImage(IFX_SeekableReadStream* pFile);
void ResetCache(CPDF_Page* pPage, const CFX_DIBitmap* pDIBitmap);
diff --git a/core/fpdfapi/parser/cfdf_document.cpp b/core/fpdfapi/parser/cfdf_document.cpp
index a1518dfed0..3bafdda9f2 100644
--- a/core/fpdfapi/parser/cfdf_document.cpp
+++ b/core/fpdfapi/parser/cfdf_document.cpp
@@ -33,7 +33,8 @@ CFDF_Document* CFDF_Document::CreateNewDoc() {
return pDoc;
}
-CFDF_Document* CFDF_Document::ParseFile(IFX_FileRead* pFile, FX_BOOL bOwnFile) {
+CFDF_Document* CFDF_Document::ParseFile(IFX_SeekableReadStream* pFile,
+ FX_BOOL bOwnFile) {
if (!pFile)
return nullptr;
@@ -47,7 +48,8 @@ CFDF_Document* CFDF_Document::ParseMemory(const uint8_t* pData, uint32_t size) {
TRUE);
}
-void CFDF_Document::ParseStream(IFX_FileRead* pFile, FX_BOOL bOwnFile) {
+void CFDF_Document::ParseStream(IFX_SeekableReadStream* pFile,
+ FX_BOOL bOwnFile) {
m_pFile = pFile;
m_bOwnFile = bOwnFile;
CPDF_SyntaxParser parser;
diff --git a/core/fpdfapi/parser/cfdf_document.h b/core/fpdfapi/parser/cfdf_document.h
index 21ac62d11c..32d0aab422 100644
--- a/core/fpdfapi/parser/cfdf_document.h
+++ b/core/fpdfapi/parser/cfdf_document.h
@@ -18,7 +18,7 @@ class CPDF_Dictionary;
class CFDF_Document : public CPDF_IndirectObjectHolder {
public:
static CFDF_Document* CreateNewDoc();
- static CFDF_Document* ParseFile(IFX_FileRead* pFile,
+ static CFDF_Document* ParseFile(IFX_SeekableReadStream* pFile,
FX_BOOL bOwnFile = FALSE);
static CFDF_Document* ParseMemory(const uint8_t* pData, uint32_t size);
~CFDF_Document() override;
@@ -31,10 +31,10 @@ class CFDF_Document : public CPDF_IndirectObjectHolder {
protected:
CFDF_Document();
- void ParseStream(IFX_FileRead* pFile, FX_BOOL bOwnFile);
+ void ParseStream(IFX_SeekableReadStream* pFile, FX_BOOL bOwnFile);
CPDF_Dictionary* m_pRootDict;
- IFX_FileRead* m_pFile;
+ IFX_SeekableReadStream* m_pFile;
FX_BOOL m_bOwnFile;
CFX_WeakPtr<CFX_ByteStringPool> m_pByteStringPool;
};
diff --git a/core/fpdfapi/parser/cpdf_data_avail.cpp b/core/fpdfapi/parser/cpdf_data_avail.cpp
index e23aa8ecfb..c6a434be5d 100644
--- a/core/fpdfapi/parser/cpdf_data_avail.cpp
+++ b/core/fpdfapi/parser/cpdf_data_avail.cpp
@@ -32,7 +32,7 @@ CPDF_DataAvail::DownloadHints::~DownloadHints() {}
int CPDF_DataAvail::s_CurrentDataAvailRecursionDepth = 0;
CPDF_DataAvail::CPDF_DataAvail(FileAvail* pFileAvail,
- IFX_FileRead* pFileRead,
+ IFX_SeekableReadStream* pFileRead,
FX_BOOL bSupportHintTable)
: m_pFileAvail(pFileAvail), m_pFileRead(pFileRead) {
m_Pos = 0;
diff --git a/core/fpdfapi/parser/cpdf_data_avail.h b/core/fpdfapi/parser/cpdf_data_avail.h
index fe5c481af2..138fe1e3d8 100644
--- a/core/fpdfapi/parser/cpdf_data_avail.h
+++ b/core/fpdfapi/parser/cpdf_data_avail.h
@@ -93,7 +93,7 @@ class CPDF_DataAvail final {
};
CPDF_DataAvail(FileAvail* pFileAvail,
- IFX_FileRead* pFileRead,
+ IFX_SeekableReadStream* pFileRead,
FX_BOOL bSupportHintTable);
~CPDF_DataAvail();
@@ -104,7 +104,7 @@ class CPDF_DataAvail final {
DocLinearizationStatus IsLinearizedPDF();
FX_BOOL IsLinearized();
void GetLinearizedMainXRefInfo(FX_FILESIZE* pPos, uint32_t* pSize);
- IFX_FileRead* GetFileRead() const { return m_pFileRead; }
+ IFX_SeekableReadStream* GetFileRead() const { return m_pFileRead; }
int GetPageCount() const;
CPDF_Dictionary* GetPage(int index);
@@ -193,7 +193,7 @@ class CPDF_DataAvail final {
FX_BOOL IsDataAvail(FX_FILESIZE offset, uint32_t size, DownloadHints* pHints);
FileAvail* const m_pFileAvail;
- IFX_FileRead* const m_pFileRead;
+ IFX_SeekableReadStream* const m_pFileRead;
CPDF_Parser m_parser;
CPDF_SyntaxParser m_syntaxParser;
CPDF_Object* m_pRoot;
diff --git a/core/fpdfapi/parser/cpdf_parser.cpp b/core/fpdfapi/parser/cpdf_parser.cpp
index c29ae18da2..c2748882cf 100644
--- a/core/fpdfapi/parser/cpdf_parser.cpp
+++ b/core/fpdfapi/parser/cpdf_parser.cpp
@@ -119,7 +119,7 @@ CPDF_CryptoHandler* CPDF_Parser::GetCryptoHandler() {
return m_pSyntax->m_pCryptoHandler.get();
}
-IFX_FileRead* CPDF_Parser::GetFileAccess() const {
+IFX_SeekableReadStream* CPDF_Parser::GetFileAccess() const {
return m_pSyntax->m_pFileAccess;
}
@@ -139,7 +139,7 @@ void CPDF_Parser::ShrinkObjectMap(uint32_t objnum) {
m_ObjectInfo[objnum - 1].pos = 0;
}
-CPDF_Parser::Error CPDF_Parser::StartParse(IFX_FileRead* pFileAccess,
+CPDF_Parser::Error CPDF_Parser::StartParse(IFX_SeekableReadStream* pFileAccess,
CPDF_Document* pDocument) {
ASSERT(!m_bHasParsed);
m_bHasParsed = true;
@@ -1438,7 +1438,7 @@ uint32_t CPDF_Parser::GetPermissions() const {
return dwPermission;
}
-FX_BOOL CPDF_Parser::IsLinearizedFile(IFX_FileRead* pFileAccess,
+FX_BOOL CPDF_Parser::IsLinearizedFile(IFX_SeekableReadStream* pFileAccess,
uint32_t offset) {
m_pSyntax->InitParser(pFileAccess, offset);
m_pSyntax->RestorePos(m_pSyntax->m_HeaderOffset + 9);
@@ -1491,8 +1491,9 @@ FX_BOOL CPDF_Parser::IsLinearizedFile(IFX_FileRead* pFileAccess,
return FALSE;
}
-CPDF_Parser::Error CPDF_Parser::StartLinearizedParse(IFX_FileRead* pFileAccess,
- CPDF_Document* pDocument) {
+CPDF_Parser::Error CPDF_Parser::StartLinearizedParse(
+ IFX_SeekableReadStream* pFileAccess,
+ CPDF_Document* pDocument) {
ASSERT(!m_bHasParsed);
m_bXRefStream = FALSE;
diff --git a/core/fpdfapi/parser/cpdf_parser.h b/core/fpdfapi/parser/cpdf_parser.h
index 83b591f3b2..887857628a 100644
--- a/core/fpdfapi/parser/cpdf_parser.h
+++ b/core/fpdfapi/parser/cpdf_parser.h
@@ -23,7 +23,7 @@ class CPDF_Object;
class CPDF_SecurityHandler;
class CPDF_StreamAcc;
class CPDF_SyntaxParser;
-class IFX_FileRead;
+class IFX_SeekableReadStream;
class CPDF_Parser {
public:
@@ -42,8 +42,9 @@ class CPDF_Parser {
CPDF_Parser();
~CPDF_Parser();
- Error StartParse(IFX_FileRead* pFile, CPDF_Document* pDocument);
- Error StartLinearizedParse(IFX_FileRead* pFile, CPDF_Document* pDocument);
+ Error StartParse(IFX_SeekableReadStream* pFile, CPDF_Document* pDocument);
+ Error StartLinearizedParse(IFX_SeekableReadStream* pFile,
+ CPDF_Document* pDocument);
void SetPassword(const FX_CHAR* password) { m_Password = password; }
CFX_ByteString GetPassword() { return m_Password; }
@@ -68,7 +69,7 @@ class CPDF_Parser {
bool IsVersionUpdated() const { return m_bVersionUpdated; }
bool IsObjectFreeOrNull(uint32_t objnum) const;
CPDF_CryptoHandler* GetCryptoHandler();
- IFX_FileRead* GetFileAccess() const;
+ IFX_SeekableReadStream* GetFileAccess() const;
FX_FILESIZE GetObjectOffset(uint32_t objnum) const;
FX_FILESIZE GetObjectSize(uint32_t objnum) const;
@@ -136,7 +137,8 @@ class CPDF_Parser {
FX_BOOL LoadLinearizedAllCrossRefV5(FX_FILESIZE pos);
Error LoadLinearizedMainXRefTable();
CPDF_StreamAcc* GetObjectStream(uint32_t number);
- FX_BOOL IsLinearizedFile(IFX_FileRead* pFileAccess, uint32_t offset);
+ FX_BOOL IsLinearizedFile(IFX_SeekableReadStream* pFileAccess,
+ uint32_t offset);
void SetEncryptDictionary(CPDF_Dictionary* pDict);
void ShrinkObjectMap(uint32_t size);
// A simple check whether the cross reference table matches with
diff --git a/core/fpdfapi/parser/cpdf_parser_unittest.cpp b/core/fpdfapi/parser/cpdf_parser_unittest.cpp
index c97b88e6d1..6c6fb213f4 100644
--- a/core/fpdfapi/parser/cpdf_parser_unittest.cpp
+++ b/core/fpdfapi/parser/cpdf_parser_unittest.cpp
@@ -13,7 +13,7 @@
#include "testing/utils/path_service.h"
// Provide a way to read test data from a buffer instead of a file.
-class CFX_TestBufferRead : public IFX_FileRead {
+class CFX_TestBufferRead : public IFX_SeekableReadStream {
public:
CFX_TestBufferRead(const unsigned char* buffer_in, size_t buf_size)
: buffer_(buffer_in), total_size_(buf_size) {}
@@ -21,7 +21,7 @@ class CFX_TestBufferRead : public IFX_FileRead {
// IFX_Stream
void Release() override { delete this; }
- // IFX_FileRead
+ // IFX_SeekableReadStream
FX_BOOL ReadBlock(void* buffer, FX_FILESIZE offset, size_t size) override {
if (offset < 0 || offset + size > total_size_) {
return FALSE;
@@ -45,7 +45,7 @@ class CPDF_TestParser : public CPDF_Parser {
// Setup reading from a file and initial states.
bool InitTestFromFile(const FX_CHAR* path) {
- IFX_FileRead* pFileAccess = FX_CreateFileRead(path);
+ IFX_SeekableReadStream* pFileAccess = FX_CreateFileRead(path);
if (!pFileAccess)
return false;
diff --git a/core/fpdfapi/parser/cpdf_stream.cpp b/core/fpdfapi/parser/cpdf_stream.cpp
index 935c80c5c8..93899db24e 100644
--- a/core/fpdfapi/parser/cpdf_stream.cpp
+++ b/core/fpdfapi/parser/cpdf_stream.cpp
@@ -57,7 +57,7 @@ void CPDF_Stream::InitStream(const uint8_t* pData,
m_pDict->SetIntegerFor("Length", m_dwSize);
}
-void CPDF_Stream::InitStreamFromFile(IFX_FileRead* pFile,
+void CPDF_Stream::InitStreamFromFile(IFX_SeekableReadStream* pFile,
CPDF_Dictionary* pDict) {
m_pDict.reset(pDict);
m_bMemoryBased = false;
diff --git a/core/fpdfapi/parser/cpdf_stream.h b/core/fpdfapi/parser/cpdf_stream.h
index 756eccfba1..588714eadc 100644
--- a/core/fpdfapi/parser/cpdf_stream.h
+++ b/core/fpdfapi/parser/cpdf_stream.h
@@ -37,7 +37,8 @@ class CPDF_Stream : public CPDF_Object {
void SetData(const uint8_t* pData, uint32_t size);
void InitStream(const uint8_t* pData, uint32_t size, CPDF_Dictionary* pDict);
- void InitStreamFromFile(IFX_FileRead* pFile, CPDF_Dictionary* pDict);
+ void InitStreamFromFile(IFX_SeekableReadStream* pFile,
+ CPDF_Dictionary* pDict);
FX_BOOL ReadRawData(FX_FILESIZE start_pos,
uint8_t* pBuf,
@@ -55,7 +56,7 @@ class CPDF_Stream : public CPDF_Object {
bool m_bMemoryBased = true;
uint32_t m_dwSize = 0;
std::unique_ptr<uint8_t, FxFreeDeleter> m_pDataBuf;
- IFX_FileRead* m_pFile = nullptr;
+ IFX_SeekableReadStream* m_pFile = nullptr;
};
using UniqueStream = std::unique_ptr<CPDF_Stream, ReleaseDeleter<CPDF_Object>>;
diff --git a/core/fpdfapi/parser/cpdf_syntax_parser.cpp b/core/fpdfapi/parser/cpdf_syntax_parser.cpp
index e7f25d15c2..3b1df94503 100644
--- a/core/fpdfapi/parser/cpdf_syntax_parser.cpp
+++ b/core/fpdfapi/parser/cpdf_syntax_parser.cpp
@@ -782,7 +782,7 @@ CPDF_Stream* CPDF_SyntaxParser::ReadStream(CPDF_Dictionary* pDict,
return pStream;
}
-void CPDF_SyntaxParser::InitParser(IFX_FileRead* pFileAccess,
+void CPDF_SyntaxParser::InitParser(IFX_SeekableReadStream* pFileAccess,
uint32_t HeaderOffset) {
FX_Free(m_pFileBuf);
diff --git a/core/fpdfapi/parser/cpdf_syntax_parser.h b/core/fpdfapi/parser/cpdf_syntax_parser.h
index 444a94bde1..5694d233e1 100644
--- a/core/fpdfapi/parser/cpdf_syntax_parser.h
+++ b/core/fpdfapi/parser/cpdf_syntax_parser.h
@@ -18,7 +18,7 @@ class CPDF_Dictionary;
class CPDF_IndirectObjectHolder;
class CPDF_Object;
class CPDF_Stream;
-class IFX_FileRead;
+class IFX_SeekableReadStream;
class CPDF_SyntaxParser {
public:
@@ -26,7 +26,7 @@ class CPDF_SyntaxParser {
explicit CPDF_SyntaxParser(const CFX_WeakPtr<CFX_ByteStringPool>& pPool);
~CPDF_SyntaxParser();
- void InitParser(IFX_FileRead* pFileAccess, uint32_t HeaderOffset);
+ void InitParser(IFX_SeekableReadStream* pFileAccess, uint32_t HeaderOffset);
FX_FILESIZE SavePos() const { return m_Pos; }
void RestorePos(FX_FILESIZE pos) { m_Pos = pos; }
@@ -86,7 +86,7 @@ class CPDF_SyntaxParser {
FX_FILESIZE m_Pos;
int m_MetadataObjnum;
- IFX_FileRead* m_pFileAccess;
+ IFX_SeekableReadStream* m_pFileAccess;
FX_FILESIZE m_HeaderOffset;
FX_FILESIZE m_FileLen;
uint8_t* m_pFileBuf;
diff --git a/core/fpdfapi/parser/fpdf_parser_utility.cpp b/core/fpdfapi/parser/fpdf_parser_utility.cpp
index 7b9ead4005..8fdef1eb11 100644
--- a/core/fpdfapi/parser/fpdf_parser_utility.cpp
+++ b/core/fpdfapi/parser/fpdf_parser_utility.cpp
@@ -68,7 +68,7 @@ const char PDF_CharType[256] = {
'R', 'R', 'R', 'R', 'R', 'R', 'R', 'R', 'R', 'R', 'R', 'R', 'R', 'R', 'R',
'R', 'R', 'R', 'R', 'R', 'R', 'R', 'W'};
-int32_t GetHeaderOffset(IFX_FileRead* pFile) {
+int32_t GetHeaderOffset(IFX_SeekableReadStream* pFile) {
const size_t kBufSize = 4;
uint8_t buf[kBufSize];
for (int32_t offset = 0; offset <= 1024; ++offset) {
diff --git a/core/fpdfapi/parser/fpdf_parser_utility.h b/core/fpdfapi/parser/fpdf_parser_utility.h
index 4c0187ed4a..589171f1a4 100644
--- a/core/fpdfapi/parser/fpdf_parser_utility.h
+++ b/core/fpdfapi/parser/fpdf_parser_utility.h
@@ -10,7 +10,7 @@
#include "core/fxcrt/fx_string.h"
#include "core/fxcrt/fx_system.h"
-class IFX_FileRead;
+class IFX_SeekableReadStream;
class CPDF_Dictionary;
// Use the accessors below instead of directly accessing PDF_CharType.
@@ -33,7 +33,7 @@ inline bool PDFCharIsLineEnding(uint8_t c) {
return c == '\r' || c == '\n';
}
-int32_t GetHeaderOffset(IFX_FileRead* pFile);
+int32_t GetHeaderOffset(IFX_SeekableReadStream* pFile);
int32_t GetDirectInteger(CPDF_Dictionary* pDict, const CFX_ByteString& key);
#endif // CORE_FPDFAPI_PARSER_FPDF_PARSER_UTILITY_H_
diff --git a/core/fxcodec/codec/ccodec_progressivedecoder.h b/core/fxcodec/codec/ccodec_progressivedecoder.h
index 73fec6457e..b760c2ec1c 100644
--- a/core/fxcodec/codec/ccodec_progressivedecoder.h
+++ b/core/fxcodec/codec/ccodec_progressivedecoder.h
@@ -21,7 +21,7 @@ class CCodec_ModuleMgr;
class CCodec_PngContext;
class CCodec_TiffContext;
class CFX_DIBAttribute;
-class IFX_FileRead;
+class IFX_SeekableReadStream;
class IFX_Pause;
struct FXBMP_Context;
struct FXGIF_Context;
@@ -45,7 +45,7 @@ class CCodec_ProgressiveDecoder {
explicit CCodec_ProgressiveDecoder(CCodec_ModuleMgr* pCodecMgr);
~CCodec_ProgressiveDecoder();
- FXCODEC_STATUS LoadImageInfo(IFX_FileRead* pFile,
+ FXCODEC_STATUS LoadImageInfo(IFX_SeekableReadStream* pFile,
FXCODEC_IMAGE_TYPE imageType,
CFX_DIBAttribute* pAttribute,
bool bSkipImageTypeCheck);
@@ -125,7 +125,7 @@ class CCodec_ProgressiveDecoder {
std::vector<uint8_t> m_pWeightTables;
};
- IFX_FileRead* m_pFile;
+ IFX_SeekableReadStream* m_pFile;
CCodec_ModuleMgr* m_pCodecMgr;
FXJPEG_Context* m_pJpegContext;
FXPNG_Context* m_pPngContext;
diff --git a/core/fxcodec/codec/ccodec_tiffmodule.h b/core/fxcodec/codec/ccodec_tiffmodule.h
index c6525f32e2..37d40821a6 100644
--- a/core/fxcodec/codec/ccodec_tiffmodule.h
+++ b/core/fxcodec/codec/ccodec_tiffmodule.h
@@ -12,13 +12,13 @@
class CCodec_TiffContext;
class CFX_DIBAttribute;
class CFX_DIBitmap;
-class IFX_FileRead;
+class IFX_SeekableReadStream;
class CCodec_TiffModule {
public:
~CCodec_TiffModule() {}
- CCodec_TiffContext* CreateDecoder(IFX_FileRead* file_ptr);
+ CCodec_TiffContext* CreateDecoder(IFX_SeekableReadStream* file_ptr);
bool LoadFrameInfo(CCodec_TiffContext* ctx,
int32_t frame,
diff --git a/core/fxcodec/codec/fx_codec_progress.cpp b/core/fxcodec/codec/fx_codec_progress.cpp
index 605e1b573f..4de62baad2 100644
--- a/core/fxcodec/codec/fx_codec_progress.cpp
+++ b/core/fxcodec/codec/fx_codec_progress.cpp
@@ -1296,7 +1296,7 @@ FX_BOOL CCodec_ProgressiveDecoder::DetectImageType(
}
FXCODEC_STATUS CCodec_ProgressiveDecoder::LoadImageInfo(
- IFX_FileRead* pFile,
+ IFX_SeekableReadStream* pFile,
FXCODEC_IMAGE_TYPE imageType,
CFX_DIBAttribute* pAttribute,
bool bSkipImageTypeCheck) {
diff --git a/core/fxcodec/codec/fx_codec_tiff.cpp b/core/fxcodec/codec/fx_codec_tiff.cpp
index f4fa01aabc..c76a604e4d 100644
--- a/core/fxcodec/codec/fx_codec_tiff.cpp
+++ b/core/fxcodec/codec/fx_codec_tiff.cpp
@@ -17,7 +17,7 @@ class CCodec_TiffContext {
CCodec_TiffContext();
~CCodec_TiffContext();
- bool InitDecoder(IFX_FileRead* file_ptr);
+ bool InitDecoder(IFX_SeekableReadStream* file_ptr);
bool LoadFrameInfo(int32_t frame,
int32_t* width,
int32_t* height,
@@ -26,7 +26,7 @@ class CCodec_TiffContext {
CFX_DIBAttribute* pAttribute);
bool Decode(CFX_DIBitmap* pDIBitmap);
- IFX_FileRead* io_in() const { return m_io_in; }
+ IFX_SeekableReadStream* io_in() const { return m_io_in; }
uint32_t offset() const { return m_offset; }
void set_offset(uint32_t offset) { m_offset = offset; }
void increment_offset(uint32_t offset) { m_offset += offset; }
@@ -50,7 +50,7 @@ class CCodec_TiffContext {
uint16_t bps,
uint16_t spp);
- IFX_FileRead* m_io_in;
+ IFX_SeekableReadStream* m_io_in;
uint32_t m_offset;
TIFF* m_tif_ctx;
};
@@ -193,7 +193,7 @@ CCodec_TiffContext::~CCodec_TiffContext() {
TIFFClose(m_tif_ctx);
}
-bool CCodec_TiffContext::InitDecoder(IFX_FileRead* file_ptr) {
+bool CCodec_TiffContext::InitDecoder(IFX_SeekableReadStream* file_ptr) {
m_io_in = file_ptr;
m_tif_ctx = tiff_open(this, "r");
return !!m_tif_ctx;
@@ -435,7 +435,8 @@ bool CCodec_TiffContext::Decode(CFX_DIBitmap* pDIBitmap) {
return false;
}
-CCodec_TiffContext* CCodec_TiffModule::CreateDecoder(IFX_FileRead* file_ptr) {
+CCodec_TiffContext* CCodec_TiffModule::CreateDecoder(
+ IFX_SeekableReadStream* file_ptr) {
CCodec_TiffContext* pDecoder = new CCodec_TiffContext;
if (!pDecoder->InitDecoder(file_ptr)) {
delete pDecoder;
diff --git a/core/fxcrt/extension.h b/core/fxcrt/extension.h
index 6a437db574..45f6d4f2f0 100644
--- a/core/fxcrt/extension.h
+++ b/core/fxcrt/extension.h
@@ -44,7 +44,7 @@ class CFX_CRTFileAccess : public IFX_FileAccess {
void Release() override;
IFX_FileAccess* Retain() override;
void GetPath(CFX_WideString& wsPath) override;
- IFX_FileStream* CreateFileStream(uint32_t dwModes) override;
+ IFX_SeekableStream* CreateFileStream(uint32_t dwModes) override;
FX_BOOL Init(const CFX_WideStringC& wsPath);
@@ -54,13 +54,13 @@ class CFX_CRTFileAccess : public IFX_FileAccess {
};
#endif // PDF_ENABLE_XFA
-class CFX_CRTFileStream final : public IFX_FileStream {
+class CFX_CRTFileStream final : public IFX_SeekableStream {
public:
explicit CFX_CRTFileStream(std::unique_ptr<IFXCRT_FileAccess> pFA);
~CFX_CRTFileStream() override;
- // IFX_FileStream:
- IFX_FileStream* Retain() override;
+ // IFX_SeekableStream:
+ IFX_SeekableStream* Retain() override;
void Release() override;
FX_FILESIZE GetSize() override;
FX_BOOL IsEOF() override;
@@ -87,7 +87,7 @@ class CFX_MemoryStream final : public IFX_MemoryStream {
~CFX_MemoryStream() override;
// IFX_MemoryStream
- IFX_FileStream* Retain() override;
+ IFX_SeekableStream* Retain() override;
void Release() override;
FX_FILESIZE GetSize() override;
FX_BOOL IsEOF() override;
diff --git a/core/fxcrt/fx_basic.h b/core/fxcrt/fx_basic.h
index 4cf69f896b..6643d33dce 100644
--- a/core/fxcrt/fx_basic.h
+++ b/core/fxcrt/fx_basic.h
@@ -121,14 +121,14 @@ class CFX_FileBufferArchive {
int32_t AppendString(const CFX_ByteStringC& lpsz);
// |pFile| must outlive the CFX_FileBufferArchive.
- void AttachFile(IFX_StreamWrite* pFile);
+ void AttachFile(IFX_WriteStream* pFile);
private:
static const size_t kBufSize = 32768;
size_t m_Length;
std::unique_ptr<uint8_t, FxFreeDeleter> m_pBuffer;
- IFX_StreamWrite* m_pFile;
+ IFX_WriteStream* m_pFile;
};
class CFX_CharMap {
diff --git a/core/fxcrt/fx_basic_buffer.cpp b/core/fxcrt/fx_basic_buffer.cpp
index d441f6c0e9..e954224d8a 100644
--- a/core/fxcrt/fx_basic_buffer.cpp
+++ b/core/fxcrt/fx_basic_buffer.cpp
@@ -285,7 +285,7 @@ int32_t CFX_FileBufferArchive::AppendString(const CFX_ByteStringC& lpsz) {
return AppendBlock(lpsz.raw_str(), lpsz.GetLength());
}
-void CFX_FileBufferArchive::AttachFile(IFX_StreamWrite* pFile) {
+void CFX_FileBufferArchive::AttachFile(IFX_WriteStream* pFile) {
ASSERT(pFile);
m_pFile = pFile;
}
diff --git a/core/fxcrt/fx_ext.h b/core/fxcrt/fx_ext.h
index 959a26bf44..cca80b1142 100644
--- a/core/fxcrt/fx_ext.h
+++ b/core/fxcrt/fx_ext.h
@@ -18,7 +18,7 @@
// Come up or wait for something better. This appears in this file rather
// than fx_stream.h due to include ordering restrictions.
using ScopedFileStream =
- std::unique_ptr<IFX_FileStream, ReleaseDeleter<IFX_FileStream>>;
+ std::unique_ptr<IFX_SeekableStream, ReleaseDeleter<IFX_SeekableStream>>;
FX_FLOAT FXSYS_tan(FX_FLOAT a);
FX_FLOAT FXSYS_logb(FX_FLOAT b, FX_FLOAT x);
diff --git a/core/fxcrt/fx_extension.cpp b/core/fxcrt/fx_extension.cpp
index ca6b6d4066..5ac22bd44e 100644
--- a/core/fxcrt/fx_extension.cpp
+++ b/core/fxcrt/fx_extension.cpp
@@ -36,7 +36,7 @@ void CFX_CRTFileAccess::GetPath(CFX_WideString& wsPath) {
wsPath = m_path;
}
-IFX_FileStream* CFX_CRTFileAccess::CreateFileStream(uint32_t dwModes) {
+IFX_SeekableStream* CFX_CRTFileAccess::CreateFileStream(uint32_t dwModes) {
return FX_CreateFileStream(m_path.c_str(), dwModes);
}
@@ -85,7 +85,7 @@ CFX_MemoryStream::~CFX_MemoryStream() {
m_Blocks.RemoveAll();
}
-IFX_FileStream* CFX_MemoryStream::Retain() {
+IFX_SeekableStream* CFX_MemoryStream::Retain() {
m_dwCount++;
return this;
}
@@ -281,7 +281,7 @@ FX_BOOL CFX_MemoryStream::ExpandBlocks(size_t size) {
return TRUE;
}
-IFX_FileStream* CFX_CRTFileStream::Retain() {
+IFX_SeekableStream* CFX_CRTFileStream::Retain() {
m_dwCount++;
return this;
}
@@ -336,24 +336,25 @@ IFX_FileAccess* FX_CreateDefaultFileAccess(const CFX_WideStringC& wsPath) {
}
#endif // PDF_ENABLE_XFA
-IFX_FileStream* FX_CreateFileStream(const FX_CHAR* filename, uint32_t dwModes) {
+IFX_SeekableStream* FX_CreateFileStream(const FX_CHAR* filename,
+ uint32_t dwModes) {
std::unique_ptr<IFXCRT_FileAccess> pFA(IFXCRT_FileAccess::Create());
if (!pFA->Open(filename, dwModes))
return nullptr;
return new CFX_CRTFileStream(std::move(pFA));
}
-IFX_FileStream* FX_CreateFileStream(const FX_WCHAR* filename,
- uint32_t dwModes) {
+IFX_SeekableStream* FX_CreateFileStream(const FX_WCHAR* filename,
+ uint32_t dwModes) {
std::unique_ptr<IFXCRT_FileAccess> pFA(IFXCRT_FileAccess::Create());
if (!pFA->Open(filename, dwModes))
return nullptr;
return new CFX_CRTFileStream(std::move(pFA));
}
-IFX_FileRead* FX_CreateFileRead(const FX_CHAR* filename) {
+IFX_SeekableReadStream* FX_CreateFileRead(const FX_CHAR* filename) {
return FX_CreateFileStream(filename, FX_FILEMODE_ReadOnly);
}
-IFX_FileRead* FX_CreateFileRead(const FX_WCHAR* filename) {
+IFX_SeekableReadStream* FX_CreateFileRead(const FX_WCHAR* filename) {
return FX_CreateFileStream(filename, FX_FILEMODE_ReadOnly);
}
IFX_MemoryStream* FX_CreateMemoryStream(uint8_t* pBuffer,
diff --git a/core/fxcrt/fx_stream.h b/core/fxcrt/fx_stream.h
index 047fedf9bb..2509ec2cd7 100644
--- a/core/fxcrt/fx_stream.h
+++ b/core/fxcrt/fx_stream.h
@@ -55,16 +55,26 @@ FX_WCHAR FX_GetFolderSeparator();
#define FX_FILEMODE_ReadOnly 1
#define FX_FILEMODE_Truncate 2
-class IFX_StreamWrite {
+class IFX_WriteStream {
public:
- virtual ~IFX_StreamWrite() {}
+ virtual ~IFX_WriteStream() {}
virtual void Release() = 0;
virtual FX_BOOL WriteBlock(const void* pData, size_t size) = 0;
};
-class IFX_FileWrite : public IFX_StreamWrite {
+class IFX_ReadStream {
public:
- // IFX_StreamWrite:
+ virtual ~IFX_ReadStream() {}
+
+ virtual void Release() = 0;
+ virtual FX_BOOL IsEOF() = 0;
+ virtual FX_FILESIZE GetPosition() = 0;
+ virtual size_t ReadBlock(void* buffer, size_t size) = 0;
+};
+
+class IFX_SeekableWriteStream : public IFX_WriteStream {
+ public:
+ // IFX_WriteStream:
FX_BOOL WriteBlock(const void* pData, size_t size) override;
virtual FX_FILESIZE GetSize() = 0;
virtual FX_BOOL Flush() = 0;
@@ -73,19 +83,9 @@ class IFX_FileWrite : public IFX_StreamWrite {
size_t size) = 0;
};
-class IFX_StreamRead {
- public:
- virtual ~IFX_StreamRead() {}
-
- virtual void Release() = 0;
- virtual FX_BOOL IsEOF() = 0;
- virtual FX_FILESIZE GetPosition() = 0;
- virtual size_t ReadBlock(void* buffer, size_t size) = 0;
-};
-
-class IFX_FileRead : public IFX_StreamRead {
+class IFX_SeekableReadStream : public IFX_ReadStream {
public:
- // IFX_StreamRead:
+ // IFX_ReadStream:
void Release() override = 0;
FX_BOOL IsEOF() override;
FX_FILESIZE GetPosition() override;
@@ -95,14 +95,15 @@ class IFX_FileRead : public IFX_StreamRead {
virtual FX_FILESIZE GetSize() = 0;
};
-IFX_FileRead* FX_CreateFileRead(const FX_CHAR* filename);
-IFX_FileRead* FX_CreateFileRead(const FX_WCHAR* filename);
+IFX_SeekableReadStream* FX_CreateFileRead(const FX_CHAR* filename);
+IFX_SeekableReadStream* FX_CreateFileRead(const FX_WCHAR* filename);
-class IFX_FileStream : public IFX_FileRead, public IFX_FileWrite {
+class IFX_SeekableStream : public IFX_SeekableReadStream,
+ public IFX_SeekableWriteStream {
public:
- virtual IFX_FileStream* Retain() = 0;
+ virtual IFX_SeekableStream* Retain() = 0;
- // IFX_FileRead:
+ // IFX_SeekableReadStream:
void Release() override = 0;
FX_BOOL IsEOF() override = 0;
FX_FILESIZE GetPosition() override = 0;
@@ -110,7 +111,7 @@ class IFX_FileStream : public IFX_FileRead, public IFX_FileWrite {
FX_BOOL ReadBlock(void* buffer, FX_FILESIZE offset, size_t size) override = 0;
FX_FILESIZE GetSize() override = 0;
- // IFX_FileWrite:
+ // IFX_SeekableWriteStream:
FX_BOOL WriteBlock(const void* buffer,
FX_FILESIZE offset,
size_t size) override = 0;
@@ -118,8 +119,10 @@ class IFX_FileStream : public IFX_FileRead, public IFX_FileWrite {
FX_BOOL Flush() override = 0;
};
-IFX_FileStream* FX_CreateFileStream(const FX_CHAR* filename, uint32_t dwModes);
-IFX_FileStream* FX_CreateFileStream(const FX_WCHAR* filename, uint32_t dwModes);
+IFX_SeekableStream* FX_CreateFileStream(const FX_CHAR* filename,
+ uint32_t dwModes);
+IFX_SeekableStream* FX_CreateFileStream(const FX_WCHAR* filename,
+ uint32_t dwModes);
#ifdef PDF_ENABLE_XFA
class IFX_FileAccess {
@@ -128,12 +131,12 @@ class IFX_FileAccess {
virtual void Release() = 0;
virtual IFX_FileAccess* Retain() = 0;
virtual void GetPath(CFX_WideString& wsPath) = 0;
- virtual IFX_FileStream* CreateFileStream(uint32_t dwModes) = 0;
+ virtual IFX_SeekableStream* CreateFileStream(uint32_t dwModes) = 0;
};
IFX_FileAccess* FX_CreateDefaultFileAccess(const CFX_WideStringC& wsPath);
#endif // PDF_ENABLE_XFA
-class IFX_MemoryStream : public IFX_FileStream {
+class IFX_MemoryStream : public IFX_SeekableStream {
public:
virtual FX_BOOL IsConsecutive() const = 0;
virtual void EstimateSize(size_t nInitSize, size_t nGrowSize) = 0;
@@ -149,9 +152,9 @@ IFX_MemoryStream* FX_CreateMemoryStream(uint8_t* pBuffer,
FX_BOOL bTakeOver = FALSE);
IFX_MemoryStream* FX_CreateMemoryStream(FX_BOOL bConsecutive = FALSE);
-class IFX_BufferRead : public IFX_StreamRead {
+class IFX_BufferRead : public IFX_ReadStream {
public:
- // IFX_StreamRead:
+ // IFX_ReadStream:
void Release() override = 0;
FX_BOOL IsEOF() override = 0;
FX_FILESIZE GetPosition() override = 0;
diff --git a/core/fxcrt/fx_xml.h b/core/fxcrt/fx_xml.h
index 78f162597f..4ab28f66c5 100644
--- a/core/fxcrt/fx_xml.h
+++ b/core/fxcrt/fx_xml.h
@@ -58,7 +58,7 @@ class CXML_Element {
size_t size,
FX_BOOL bSaveSpaceChars = FALSE,
FX_FILESIZE* pParsedSize = nullptr);
- static CXML_Element* Parse(IFX_FileRead* pFile,
+ static CXML_Element* Parse(IFX_SeekableReadStream* pFile,
FX_BOOL bSaveSpaceChars = FALSE,
FX_FILESIZE* pParsedSize = nullptr);
static CXML_Element* Parse(IFX_BufferRead* pBuffer,
diff --git a/core/fxcrt/fx_xml_parser.cpp b/core/fxcrt/fx_xml_parser.cpp
index 563e1c961b..e6c3543378 100644
--- a/core/fxcrt/fx_xml_parser.cpp
+++ b/core/fxcrt/fx_xml_parser.cpp
@@ -57,7 +57,7 @@ FX_FILESIZE CXML_DataBufAcc::GetBlockOffset() {
return 0;
}
-CXML_DataStmAcc::CXML_DataStmAcc(IFX_FileRead* pFileRead)
+CXML_DataStmAcc::CXML_DataStmAcc(IFX_SeekableReadStream* pFileRead)
: m_pFileRead(pFileRead), m_pBuffer(nullptr), m_nStart(0), m_dwSize(0) {
ASSERT(m_pFileRead);
}
@@ -132,7 +132,7 @@ FX_BOOL CXML_Parser::Init(uint8_t* pBuffer, size_t size) {
m_pDataAcc = new CXML_DataBufAcc(pBuffer, size);
return Init(TRUE);
}
-FX_BOOL CXML_Parser::Init(IFX_FileRead* pFileRead) {
+FX_BOOL CXML_Parser::Init(IFX_SeekableReadStream* pFileRead) {
m_pDataAcc = new CXML_DataStmAcc(pFileRead);
return Init(TRUE);
}
@@ -651,7 +651,7 @@ CXML_Element* CXML_Element::Parse(const void* pBuffer,
}
return XML_ContinueParse(parser, bSaveSpaceChars, pParsedSize);
}
-CXML_Element* CXML_Element::Parse(IFX_FileRead* pFile,
+CXML_Element* CXML_Element::Parse(IFX_SeekableReadStream* pFile,
FX_BOOL bSaveSpaceChars,
FX_FILESIZE* pParsedSize) {
CXML_Parser parser;
diff --git a/core/fxcrt/fxcrt_stream.cpp b/core/fxcrt/fxcrt_stream.cpp
index a8c96bf02c..638a183177 100644
--- a/core/fxcrt/fxcrt_stream.cpp
+++ b/core/fxcrt/fxcrt_stream.cpp
@@ -6,22 +6,22 @@
#include "core/fxcrt/fx_stream.h"
-FX_BOOL IFX_FileWrite::WriteBlock(const void* pData, size_t size) {
+FX_BOOL IFX_SeekableWriteStream::WriteBlock(const void* pData, size_t size) {
return WriteBlock(pData, GetSize(), size);
}
-FX_BOOL IFX_FileRead::IsEOF() {
+FX_BOOL IFX_SeekableReadStream::IsEOF() {
return FALSE;
}
-FX_FILESIZE IFX_FileRead::GetPosition() {
+FX_FILESIZE IFX_SeekableReadStream::GetPosition() {
return 0;
}
-size_t IFX_FileRead::ReadBlock(void* buffer, size_t size) {
+size_t IFX_SeekableReadStream::ReadBlock(void* buffer, size_t size) {
return 0;
}
-FX_BOOL IFX_FileStream::WriteBlock(const void* buffer, size_t size) {
+FX_BOOL IFX_SeekableStream::WriteBlock(const void* buffer, size_t size) {
return WriteBlock(buffer, GetSize(), size);
}
diff --git a/core/fxcrt/xml_int.h b/core/fxcrt/xml_int.h
index 47997062cc..aa157c2333 100644
--- a/core/fxcrt/xml_int.h
+++ b/core/fxcrt/xml_int.h
@@ -37,7 +37,7 @@ class CXML_DataBufAcc : public IFX_BufferRead {
class CXML_DataStmAcc : public IFX_BufferRead {
public:
- explicit CXML_DataStmAcc(IFX_FileRead* pFileRead);
+ explicit CXML_DataStmAcc(IFX_SeekableReadStream* pFileRead);
~CXML_DataStmAcc() override;
// IFX_BufferRead
@@ -51,7 +51,7 @@ class CXML_DataStmAcc : public IFX_BufferRead {
FX_FILESIZE GetBlockOffset() override;
protected:
- IFX_FileRead* m_pFileRead;
+ IFX_SeekableReadStream* m_pFileRead;
uint8_t* m_pBuffer;
FX_FILESIZE m_nStart;
size_t m_dwSize;
@@ -63,7 +63,7 @@ class CXML_Parser {
~CXML_Parser();
FX_BOOL Init(uint8_t* pBuffer, size_t size);
- FX_BOOL Init(IFX_FileRead* pFileRead);
+ FX_BOOL Init(IFX_SeekableReadStream* pFileRead);
FX_BOOL Init(IFX_BufferRead* pBuffer);
FX_BOOL Init(FX_BOOL bOwndedStream);
FX_BOOL ReadNextBlock();
diff --git a/core/fxge/android/cfpf_skiafontmgr.cpp b/core/fxge/android/cfpf_skiafontmgr.cpp
index 290551bedf..2deb327392 100644
--- a/core/fxge/android/cfpf_skiafontmgr.cpp
+++ b/core/fxge/android/cfpf_skiafontmgr.cpp
@@ -26,7 +26,8 @@ static unsigned long FPF_SkiaStream_Read(FXFT_Stream stream,
unsigned long offset,
unsigned char* buffer,
unsigned long count) {
- IFX_FileRead* pFileRead = (IFX_FileRead*)stream->descriptor.pointer;
+ IFX_SeekableReadStream* pFileRead =
+ (IFX_SeekableReadStream*)stream->descriptor.pointer;
if (!pFileRead)
return 0;
if (count > 0) {
@@ -355,7 +356,7 @@ CFPF_SkiaFont* CFPF_SkiaFontMgr::CreateFont(const CFX_ByteStringC& bsFamilyname,
return nullptr;
}
-FXFT_Face CFPF_SkiaFontMgr::GetFontFace(IFX_FileRead* pFileRead,
+FXFT_Face CFPF_SkiaFontMgr::GetFontFace(IFX_SeekableReadStream* pFileRead,
int32_t iFaceIndex) {
if (!pFileRead)
return nullptr;
diff --git a/core/fxge/android/fpf_skiafontmgr.h b/core/fxge/android/fpf_skiafontmgr.h
index bd586204c5..74e7adeb5a 100644
--- a/core/fxge/android/fpf_skiafontmgr.h
+++ b/core/fxge/android/fpf_skiafontmgr.h
@@ -75,7 +75,7 @@ class CFPF_SkiaFileFont : public CFPF_SkiaFontDescriptor {
// CFPF_SkiaFontDescriptor
int32_t GetType() const override { return FPF_SKIAFONTTYPE_File; }
- IFX_FileRead* m_pFile;
+ IFX_SeekableReadStream* m_pFile;
};
class CFPF_SkiaBufferFont : public CFPF_SkiaFontDescriptor {
@@ -101,7 +101,8 @@ class CFPF_SkiaFontMgr {
uint32_t dwMatch = 0);
bool InitFTLibrary();
- FXFT_Face GetFontFace(IFX_FileRead* pFileRead, int32_t iFaceIndex = 0);
+ FXFT_Face GetFontFace(IFX_SeekableReadStream* pFileRead,
+ int32_t iFaceIndex = 0);
FXFT_Face GetFontFace(const CFX_ByteStringC& bsFile, int32_t iFaceIndex = 0);
FXFT_Face GetFontFace(const uint8_t* pBuffer,
size_t szBuffer,
diff --git a/core/fxge/fx_font.h b/core/fxge/fx_font.h
index 8dda12af50..a562795784 100644
--- a/core/fxge/fx_font.h
+++ b/core/fxge/fx_font.h
@@ -110,7 +110,7 @@ class CFX_Font {
CFX_SubstFont* GetSubstFont() const { return m_pSubstFont.get(); }
#ifdef PDF_ENABLE_XFA
- FX_BOOL LoadFile(IFX_FileRead* pFile,
+ FX_BOOL LoadFile(IFX_SeekableReadStream* pFile,
int nFaceIndex = 0,
int* pFaceCount = nullptr);
diff --git a/core/fxge/ge/cfx_font.cpp b/core/fxge/ge/cfx_font.cpp
index f58462479f..d1c31d0f51 100644
--- a/core/fxge/ge/cfx_font.cpp
+++ b/core/fxge/ge/cfx_font.cpp
@@ -39,7 +39,8 @@ unsigned long FTStreamRead(FXFT_Stream stream,
if (count == 0)
return 0;
- IFX_FileRead* pFile = static_cast<IFX_FileRead*>(stream->descriptor.pointer);
+ IFX_SeekableReadStream* pFile =
+ static_cast<IFX_SeekableReadStream*>(stream->descriptor.pointer);
return pFile->ReadBlock(buffer, offset, count) ? count : 0;
}
@@ -47,7 +48,7 @@ void FTStreamClose(FXFT_Stream stream) {}
FX_BOOL LoadFileImp(FXFT_Library library,
FXFT_Face* Face,
- IFX_FileRead* pFile,
+ IFX_SeekableReadStream* pFile,
int32_t faceIndex,
std::unique_ptr<FXFT_StreamRec>* stream) {
std::unique_ptr<FXFT_StreamRec> stream1(new FXFT_StreamRec());
@@ -331,7 +332,7 @@ void CFX_Font::LoadSubst(const CFX_ByteString& face_name,
}
#ifdef PDF_ENABLE_XFA
-FX_BOOL CFX_Font::LoadFile(IFX_FileRead* pFile,
+FX_BOOL CFX_Font::LoadFile(IFX_SeekableReadStream* pFile,
int nFaceIndex,
int* pFaceCount) {
m_bEmbedded = FALSE;
diff --git a/fpdfsdk/cpdfsdk_formfillenvironment.cpp b/fpdfsdk/cpdfsdk_formfillenvironment.cpp
index 71b83b2655..d93e309d2f 100644
--- a/fpdfsdk/cpdfsdk_formfillenvironment.cpp
+++ b/fpdfsdk/cpdfsdk_formfillenvironment.cpp
@@ -470,7 +470,7 @@ FPDF_FILEHANDLER* CPDFSDK_FormFillEnvironment::OpenFile(int fileType,
return nullptr;
}
-IFX_FileRead* CPDFSDK_FormFillEnvironment::DownloadFromURL(
+IFX_SeekableReadStream* CPDFSDK_FormFillEnvironment::DownloadFromURL(
const FX_WCHAR* url) {
if (!m_pInfo || !m_pInfo->FFI_DownloadFromURL)
return nullptr;
diff --git a/fpdfsdk/cpdfsdk_formfillenvironment.h b/fpdfsdk/cpdfsdk_formfillenvironment.h
index f59999f9ce..4cdbda3f7c 100644
--- a/fpdfsdk/cpdfsdk_formfillenvironment.h
+++ b/fpdfsdk/cpdfsdk_formfillenvironment.h
@@ -147,7 +147,7 @@ class CPDFSDK_FormFillEnvironment
FPDF_FILEHANDLER* OpenFile(int fileType,
FPDF_WIDESTRING wsURL,
const char* mode);
- IFX_FileRead* DownloadFromURL(const FX_WCHAR* url);
+ IFX_SeekableReadStream* DownloadFromURL(const FX_WCHAR* url);
CFX_WideString PostRequestURL(const FX_WCHAR* wsURL,
const FX_WCHAR* wsData,
const FX_WCHAR* wsContentType,
diff --git a/fpdfsdk/fpdf_dataavail.cpp b/fpdfsdk/fpdf_dataavail.cpp
index fb866ec229..0bf67e9826 100644
--- a/fpdfsdk/fpdf_dataavail.cpp
+++ b/fpdfsdk/fpdf_dataavail.cpp
@@ -57,14 +57,14 @@ class CFPDF_FileAvailWrap : public CPDF_DataAvail::FileAvail {
FX_FILEAVAIL* m_pfileAvail;
};
-class CFPDF_FileAccessWrap : public IFX_FileRead {
+class CFPDF_FileAccessWrap : public IFX_SeekableReadStream {
public:
CFPDF_FileAccessWrap() { m_pFileAccess = nullptr; }
~CFPDF_FileAccessWrap() override {}
void Set(FPDF_FILEACCESS* pFile) { m_pFileAccess = pFile; }
- // IFX_FileRead
+ // IFX_SeekableReadStream
FX_FILESIZE GetSize() override { return m_pFileAccess->m_FileLen; }
FX_BOOL ReadBlock(void* buffer, FX_FILESIZE offset, size_t size) override {
diff --git a/fpdfsdk/fpdfeditimg.cpp b/fpdfsdk/fpdfeditimg.cpp
index 042ad2bf37..282244970d 100644
--- a/fpdfsdk/fpdfeditimg.cpp
+++ b/fpdfsdk/fpdfeditimg.cpp
@@ -32,7 +32,7 @@ FPDFImageObj_LoadJpegFile(FPDF_PAGE* pages,
if (!image_object || !fileAccess || !pages)
return FALSE;
- IFX_FileRead* pFile = new CPDF_CustomAccess(fileAccess);
+ IFX_SeekableReadStream* pFile = new CPDF_CustomAccess(fileAccess);
CPDF_ImageObject* pImgObj = reinterpret_cast<CPDF_ImageObject*>(image_object);
for (int index = 0; index < nCount; index++) {
CPDF_Page* pPage = CPDFPageFromFPDFPage(pages[index]);
diff --git a/fpdfsdk/fpdfsave.cpp b/fpdfsdk/fpdfsave.cpp
index 364f4d2d6f..9cdc714f3f 100644
--- a/fpdfsdk/fpdfsave.cpp
+++ b/fpdfsdk/fpdfsave.cpp
@@ -36,7 +36,7 @@
#include <ctime>
#endif
-class CFX_IFileWrite final : public IFX_StreamWrite {
+class CFX_IFileWrite final : public IFX_WriteStream {
public:
CFX_IFileWrite();
FX_BOOL Init(FPDF_FILEWRITE* pFileWriteStruct);
diff --git a/fpdfsdk/fpdfview.cpp b/fpdfsdk/fpdfview.cpp
index e0c24ec792..92ca34effa 100644
--- a/fpdfsdk/fpdfview.cpp
+++ b/fpdfsdk/fpdfview.cpp
@@ -96,7 +96,7 @@ CFPDF_FileStream::CFPDF_FileStream(FPDF_FILEHANDLER* pFS) {
m_nCurPos = 0;
}
-IFX_FileStream* CFPDF_FileStream::Retain() {
+IFX_SeekableStream* CFPDF_FileStream::Retain() {
return this;
}
@@ -325,7 +325,8 @@ DLLEXPORT FPDF_DOCUMENT STDCALL FPDF_LoadDocument(FPDF_STRING file_path,
FPDF_BYTESTRING password) {
// NOTE: the creation of the file needs to be by the embedder on the
// other side of this API.
- IFX_FileRead* pFileAccess = FX_CreateFileRead((const FX_CHAR*)file_path);
+ IFX_SeekableReadStream* pFileAccess =
+ FX_CreateFileRead((const FX_CHAR*)file_path);
if (!pFileAccess) {
return nullptr;
}
@@ -381,7 +382,7 @@ DLLEXPORT FPDF_BOOL STDCALL FPDF_LoadXFA(FPDF_DOCUMENT document) {
}
#endif // PDF_ENABLE_XFA
-class CMemFile final : public IFX_FileRead {
+class CMemFile final : public IFX_SeekableReadStream {
public:
CMemFile(uint8_t* pBuf, FX_FILESIZE size) : m_pBuf(pBuf), m_size(size) {}
diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_app.cpp b/fpdfsdk/fpdfxfa/cpdfxfa_app.cpp
index 61694d0a28..dc5c4be0d6 100644
--- a/fpdfsdk/fpdfxfa/cpdfxfa_app.cpp
+++ b/fpdfsdk/fpdfxfa/cpdfxfa_app.cpp
@@ -187,7 +187,7 @@ CFX_WideString CPDFXFA_App::Response(const CFX_WideString& wsQuestion,
return wsAnswer;
}
-IFX_FileRead* CPDFXFA_App::DownloadURL(const CFX_WideString& wsURL) {
+IFX_SeekableReadStream* CPDFXFA_App::DownloadURL(const CFX_WideString& wsURL) {
CPDFSDK_FormFillEnvironment* pFormFillEnv = m_pFormFillEnvList.GetAt(0);
return pFormFillEnv ? pFormFillEnv->DownloadFromURL(wsURL.c_str()) : nullptr;
}
diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_app.h b/fpdfsdk/fpdfxfa/cpdfxfa_app.h
index 78184d1434..9ec045f540 100644
--- a/fpdfsdk/fpdfxfa/cpdfxfa_app.h
+++ b/fpdfsdk/fpdfxfa/cpdfxfa_app.h
@@ -48,7 +48,7 @@ class CPDFXFA_App : public IXFA_AppProvider {
const CFX_WideString& wsDefaultAnswer,
FX_BOOL bMark) override;
- IFX_FileRead* DownloadURL(const CFX_WideString& wsURL) override;
+ IFX_SeekableReadStream* DownloadURL(const CFX_WideString& wsURL) override;
FX_BOOL PostRequestURL(const CFX_WideString& wsURL,
const CFX_WideString& wsData,
const CFX_WideString& wsContentType,
diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp b/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp
index 7e7ee50825..13b79baf9b 100644
--- a/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp
+++ b/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp
@@ -704,7 +704,7 @@ FX_BOOL CPDFXFA_DocEnvironment::SubmitData(CXFA_FFDoc* hDoc,
return ret;
}
-IFX_FileRead* CPDFXFA_DocEnvironment::OpenLinkedFile(
+IFX_SeekableReadStream* CPDFXFA_DocEnvironment::OpenLinkedFile(
CXFA_FFDoc* hDoc,
const CFX_WideString& wsLink) {
CPDFSDK_FormFillEnvironment* pFormFillEnv = m_pDocument->GetFormFillEnv();
diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.h b/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.h
index 537e1ebed3..999d44586c 100644
--- a/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.h
+++ b/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.h
@@ -85,8 +85,8 @@ class CPDFXFA_DocEnvironment : public IXFA_DocEnvironment {
const CFX_ByteStringC& szPropName,
CFXJSE_Value* pValue) override;
- IFX_FileRead* OpenLinkedFile(CXFA_FFDoc* hDoc,
- const CFX_WideString& wsLink) override;
+ IFX_SeekableReadStream* OpenLinkedFile(CXFA_FFDoc* hDoc,
+ const CFX_WideString& wsLink) override;
private:
FX_BOOL OnBeforeNotifySubmit();
diff --git a/fpdfsdk/fsdk_define.h b/fpdfsdk/fsdk_define.h
index b59a3c2657..4fea138779 100644
--- a/fpdfsdk/fsdk_define.h
+++ b/fpdfsdk/fsdk_define.h
@@ -25,12 +25,12 @@ class CPDF_Page;
class CPDF_PageRenderContext;
class IFSDK_PAUSE_Adapter;
-class CPDF_CustomAccess final : public IFX_FileRead {
+class CPDF_CustomAccess final : public IFX_SeekableReadStream {
public:
explicit CPDF_CustomAccess(FPDF_FILEACCESS* pFileAccess);
~CPDF_CustomAccess() override {}
- // IFX_FileRead
+ // IFX_SeekableReadStream
FX_FILESIZE GetSize() override;
void Release() override;
FX_BOOL ReadBlock(void* buffer, FX_FILESIZE offset, size_t size) override;
@@ -40,13 +40,13 @@ class CPDF_CustomAccess final : public IFX_FileRead {
};
#ifdef PDF_ENABLE_XFA
-class CFPDF_FileStream : public IFX_FileStream {
+class CFPDF_FileStream : public IFX_SeekableStream {
public:
explicit CFPDF_FileStream(FPDF_FILEHANDLER* pFS);
~CFPDF_FileStream() override {}
- // IFX_FileStream:
- IFX_FileStream* Retain() override;
+ // IFX_SeekableStream:
+ IFX_SeekableStream* Retain() override;
void Release() override;
FX_FILESIZE GetSize() override;
FX_BOOL IsEOF() override;
diff --git a/testing/libfuzzer/pdf_cfx_saxreader_fuzzer.cc b/testing/libfuzzer/pdf_cfx_saxreader_fuzzer.cc
index 501c4ff38b..b32a182f23 100644
--- a/testing/libfuzzer/pdf_cfx_saxreader_fuzzer.cc
+++ b/testing/libfuzzer/pdf_cfx_saxreader_fuzzer.cc
@@ -16,8 +16,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
if (!stream)
return 0;
- std::unique_ptr<IFX_FileRead, ReleaseDeleter<IFX_FileRead>> fileRead(
- FX_CreateFileRead(stream.get(), false));
+ std::unique_ptr<IFX_SeekableReadStream,
+ ReleaseDeleter<IFX_SeekableReadStream>>
+ fileRead(FX_CreateFileRead(stream.get(), false));
if (!fileRead)
return 0;
diff --git a/testing/libfuzzer/xfa_codec_fuzzer.h b/testing/libfuzzer/xfa_codec_fuzzer.h
index 13a467e1ef..c31761818f 100644
--- a/testing/libfuzzer/xfa_codec_fuzzer.h
+++ b/testing/libfuzzer/xfa_codec_fuzzer.h
@@ -41,7 +41,7 @@ class XFACodecFuzzer {
}
private:
- class Reader : public IFX_FileRead {
+ class Reader : public IFX_SeekableReadStream {
public:
Reader(const uint8_t* data, size_t size) : m_data(data), m_size(size) {}
~Reader() {}
diff --git a/xfa/fde/xml/cfx_saxreader.cpp b/xfa/fde/xml/cfx_saxreader.cpp
index 187d14e98b..8f18451ea0 100644
--- a/xfa/fde/xml/cfx_saxreader.cpp
+++ b/xfa/fde/xml/cfx_saxreader.cpp
@@ -70,7 +70,7 @@ CFX_SAXFile::CFX_SAXFile()
m_pBuf(nullptr),
m_dwBufSize(0),
m_dwBufIndex(0) {}
-FX_BOOL CFX_SAXFile::StartFile(IFX_FileRead* pFile,
+FX_BOOL CFX_SAXFile::StartFile(IFX_SeekableReadStream* pFile,
uint32_t dwStart,
uint32_t dwLen) {
ASSERT(!m_pFile && pFile);
@@ -214,7 +214,7 @@ FX_BOOL CFX_SAXReader::SkipSpace(uint8_t ch) {
return (m_dwParseMode & CFX_SaxParseMode_NotSkipSpace) == 0 && ch < 0x21;
}
-int32_t CFX_SAXReader::StartParse(IFX_FileRead* pFile,
+int32_t CFX_SAXReader::StartParse(IFX_SeekableReadStream* pFile,
uint32_t dwStart,
uint32_t dwLen,
uint32_t dwParseMode) {
diff --git a/xfa/fde/xml/cfx_saxreader.h b/xfa/fde/xml/cfx_saxreader.h
index b6bedfe65c..10ba69f1f5 100644
--- a/xfa/fde/xml/cfx_saxreader.h
+++ b/xfa/fde/xml/cfx_saxreader.h
@@ -38,10 +38,12 @@ class CFX_SAXItem {
class CFX_SAXFile {
public:
CFX_SAXFile();
- FX_BOOL StartFile(IFX_FileRead* pFile, uint32_t dwStart, uint32_t dwLen);
+ FX_BOOL StartFile(IFX_SeekableReadStream* pFile,
+ uint32_t dwStart,
+ uint32_t dwLen);
FX_BOOL ReadNextBlock();
void Reset();
- IFX_FileRead* m_pFile;
+ IFX_SeekableReadStream* m_pFile;
uint32_t m_dwStart;
uint32_t m_dwEnd;
uint32_t m_dwCur;
@@ -70,7 +72,7 @@ class CFX_SAXReader {
CFX_SAXReader();
~CFX_SAXReader();
- int32_t StartParse(IFX_FileRead* pFile,
+ int32_t StartParse(IFX_SeekableReadStream* pFile,
uint32_t dwStart = 0,
uint32_t dwLen = -1,
uint32_t dwParseMode = 0);
diff --git a/xfa/fgas/crt/fgas_stream.cpp b/xfa/fgas/crt/fgas_stream.cpp
index 74c19eab32..f0a2a88100 100644
--- a/xfa/fgas/crt/fgas_stream.cpp
+++ b/xfa/fgas/crt/fgas_stream.cpp
@@ -104,7 +104,7 @@ class CFX_FileReadStreamImp : public IFX_StreamImp {
CFX_FileReadStreamImp();
~CFX_FileReadStreamImp() override {}
- FX_BOOL LoadFileRead(IFX_FileRead* pFileRead, uint32_t dwAccess);
+ FX_BOOL LoadFileRead(IFX_SeekableReadStream* pFileRead, uint32_t dwAccess);
// IFX_StreamImp:
int32_t GetLength() const override;
@@ -125,7 +125,7 @@ class CFX_FileReadStreamImp : public IFX_StreamImp {
FX_BOOL SetLength(int32_t iLength) override { return FALSE; }
protected:
- IFX_FileRead* m_pFileRead;
+ IFX_SeekableReadStream* m_pFileRead;
int32_t m_iPosition;
int32_t m_iLength;
};
@@ -170,7 +170,7 @@ class CFX_FileWriteStreamImp : public IFX_StreamImp {
CFX_FileWriteStreamImp();
~CFX_FileWriteStreamImp() override {}
- FX_BOOL LoadFileWrite(IFX_FileWrite* pFileWrite, uint32_t dwAccess);
+ FX_BOOL LoadFileWrite(IFX_SeekableWriteStream* pFileWrite, uint32_t dwAccess);
// IFX_StreamImp:
int32_t GetLength() const override;
@@ -189,7 +189,7 @@ class CFX_FileWriteStreamImp : public IFX_StreamImp {
FX_BOOL SetLength(int32_t iLength) override { return FALSE; }
protected:
- IFX_FileWrite* m_pFileWrite;
+ IFX_SeekableWriteStream* m_pFileWrite;
int32_t m_iPosition;
};
@@ -208,8 +208,8 @@ class CFX_Stream : public IFX_Stream {
FX_BOOL LoadFile(const FX_WCHAR* pszSrcFileName, uint32_t dwAccess);
FX_BOOL LoadBuffer(uint8_t* pData, int32_t iTotalSize, uint32_t dwAccess);
- FX_BOOL LoadFileRead(IFX_FileRead* pFileRead, uint32_t dwAccess);
- FX_BOOL LoadFileWrite(IFX_FileWrite* pFileWrite, uint32_t dwAccess);
+ FX_BOOL LoadFileRead(IFX_SeekableReadStream* pFileRead, uint32_t dwAccess);
+ FX_BOOL LoadFileWrite(IFX_SeekableWriteStream* pFileWrite, uint32_t dwAccess);
FX_BOOL LoadBufferRead(IFX_BufferRead* pBufferRead,
int32_t iFileSize,
uint32_t dwAccess,
@@ -289,12 +289,12 @@ class CFX_TextStream : public IFX_Stream {
void InitStream();
};
-class CFGAS_FileRead : public IFX_FileRead {
+class CFGAS_FileRead : public IFX_SeekableReadStream {
public:
CFGAS_FileRead(IFX_Stream* pStream, FX_BOOL bReleaseStream);
~CFGAS_FileRead() override;
- // IFX_FileRead
+ // IFX_SeekableReadStream
void Release() override;
FX_FILESIZE GetSize() override;
FX_BOOL ReadBlock(void* buffer, FX_FILESIZE offset, size_t size) override;
@@ -336,7 +336,7 @@ FX_BOOL FileSetSize(FXSYS_FILE* file, int32_t size) {
} // namespace
// static
-IFX_Stream* IFX_Stream::CreateStream(IFX_FileRead* pFileRead,
+IFX_Stream* IFX_Stream::CreateStream(IFX_SeekableReadStream* pFileRead,
uint32_t dwAccess) {
CFX_Stream* pSR = new CFX_Stream;
if (!pSR->LoadFileRead(pFileRead, dwAccess)) {
@@ -350,7 +350,7 @@ IFX_Stream* IFX_Stream::CreateStream(IFX_FileRead* pFileRead,
}
// static
-IFX_Stream* IFX_Stream::CreateStream(IFX_FileWrite* pFileWrite,
+IFX_Stream* IFX_Stream::CreateStream(IFX_SeekableWriteStream* pFileWrite,
uint32_t dwAccess) {
CFX_Stream* pSR = new CFX_Stream;
if (!pSR->LoadFileWrite(pFileWrite, dwAccess)) {
@@ -549,7 +549,7 @@ FX_BOOL CFX_FileStreamImp::SetLength(int32_t iLength) {
}
CFX_FileReadStreamImp::CFX_FileReadStreamImp()
: m_pFileRead(nullptr), m_iPosition(0), m_iLength(0) {}
-FX_BOOL CFX_FileReadStreamImp::LoadFileRead(IFX_FileRead* pFileRead,
+FX_BOOL CFX_FileReadStreamImp::LoadFileRead(IFX_SeekableReadStream* pFileRead,
uint32_t dwAccess) {
ASSERT(!m_pFileRead && pFileRead);
if (dwAccess & FX_STREAMACCESS_Write) {
@@ -744,8 +744,9 @@ int32_t CFX_BufferReadStreamImp::ReadString(FX_WCHAR* pStr,
}
CFX_FileWriteStreamImp::CFX_FileWriteStreamImp()
: m_pFileWrite(nullptr), m_iPosition(0) {}
-FX_BOOL CFX_FileWriteStreamImp::LoadFileWrite(IFX_FileWrite* pFileWrite,
- uint32_t dwAccess) {
+FX_BOOL CFX_FileWriteStreamImp::LoadFileWrite(
+ IFX_SeekableWriteStream* pFileWrite,
+ uint32_t dwAccess) {
ASSERT(!m_pFileWrite && pFileWrite);
if (dwAccess & FX_STREAMACCESS_Read) {
return FALSE;
@@ -1152,7 +1153,8 @@ FX_BOOL CFX_Stream::LoadFile(const FX_WCHAR* pszSrcFileName,
return TRUE;
}
-FX_BOOL CFX_Stream::LoadFileRead(IFX_FileRead* pFileRead, uint32_t dwAccess) {
+FX_BOOL CFX_Stream::LoadFileRead(IFX_SeekableReadStream* pFileRead,
+ uint32_t dwAccess) {
if (m_eStreamType != FX_SREAMTYPE_Unknown || m_pStreamImp)
return FALSE;
@@ -1170,7 +1172,7 @@ FX_BOOL CFX_Stream::LoadFileRead(IFX_FileRead* pFileRead, uint32_t dwAccess) {
return TRUE;
}
-FX_BOOL CFX_Stream::LoadFileWrite(IFX_FileWrite* pFileWrite,
+FX_BOOL CFX_Stream::LoadFileWrite(IFX_SeekableWriteStream* pFileWrite,
uint32_t dwAccess) {
if (m_eStreamType != FX_SREAMTYPE_Unknown || m_pStreamImp)
return FALSE;
@@ -1467,8 +1469,8 @@ IFX_Stream* CFX_Stream::CreateSharedStream(uint32_t dwAccess,
}
return pShared;
}
-IFX_FileRead* FX_CreateFileRead(IFX_Stream* pBaseStream,
- FX_BOOL bReleaseStream) {
+IFX_SeekableReadStream* FX_CreateFileRead(IFX_Stream* pBaseStream,
+ FX_BOOL bReleaseStream) {
ASSERT(pBaseStream);
return new CFGAS_FileRead(pBaseStream, bReleaseStream);
}
diff --git a/xfa/fgas/crt/fgas_stream.h b/xfa/fgas/crt/fgas_stream.h
index 637402f1f5..c61688d7a7 100644
--- a/xfa/fgas/crt/fgas_stream.h
+++ b/xfa/fgas/crt/fgas_stream.h
@@ -12,8 +12,8 @@
class IFX_Stream;
-IFX_FileRead* FX_CreateFileRead(IFX_Stream* pBaseStream,
- FX_BOOL bReleaseStream);
+IFX_SeekableReadStream* FX_CreateFileRead(IFX_Stream* pBaseStream,
+ FX_BOOL bReleaseStream);
enum FX_STREAMACCESS {
FX_STREAMACCESS_Binary = 0x00,
@@ -33,8 +33,10 @@ enum FX_STREAMSEEK {
class IFX_Stream {
public:
- static IFX_Stream* CreateStream(IFX_FileRead* pFileRead, uint32_t dwAccess);
- static IFX_Stream* CreateStream(IFX_FileWrite* pFileWrite, uint32_t dwAccess);
+ static IFX_Stream* CreateStream(IFX_SeekableReadStream* pFileRead,
+ uint32_t dwAccess);
+ static IFX_Stream* CreateStream(IFX_SeekableWriteStream* pFileWrite,
+ uint32_t dwAccess);
static IFX_Stream* CreateStream(uint8_t* pData,
int32_t length,
uint32_t dwAccess);
diff --git a/xfa/fgas/font/fgas_gefont.h b/xfa/fgas/font/fgas_gefont.h
index 5a13aec372..7245e836a1 100644
--- a/xfa/fgas/font/fgas_gefont.h
+++ b/xfa/fgas/font/fgas_gefont.h
@@ -101,7 +101,9 @@ class CFGAS_GEFont {
int32_t m_iRefCount;
bool m_bExternalFont;
std::unique_ptr<IFX_Stream, ReleaseDeleter<IFX_Stream>> m_pStream;
- std::unique_ptr<IFX_FileRead, ReleaseDeleter<IFX_FileRead>> m_pFileRead;
+ std::unique_ptr<IFX_SeekableReadStream,
+ ReleaseDeleter<IFX_SeekableReadStream>>
+ m_pFileRead;
std::unique_ptr<CFX_UnicodeEncoding> m_pFontEncoding;
std::unique_ptr<CFX_DiscreteArrayTemplate<uint16_t>> m_pCharWidthMap;
std::unique_ptr<CFX_MassArrayTemplate<CFX_Rect>> m_pRectArray;
diff --git a/xfa/fgas/font/fgas_stdfontmgr.cpp b/xfa/fgas/font/fgas_stdfontmgr.cpp
index 59bd272a93..646eb94696 100644
--- a/xfa/fgas/font/fgas_stdfontmgr.cpp
+++ b/xfa/fgas/font/fgas_stdfontmgr.cpp
@@ -591,7 +591,7 @@ CFGAS_FontMgrImp::~CFGAS_FontMgrImp() {
pos = m_IFXFont2FileRead.GetStartPosition();
while (pos) {
CFGAS_GEFont* pFont;
- IFX_FileRead* pFileRead;
+ IFX_SeekableReadStream* pFileRead;
m_IFXFont2FileRead.GetNextAssoc(pos, pFont, pFileRead);
pFileRead->Release();
}
@@ -609,7 +609,7 @@ FX_BOOL CFGAS_FontMgrImp::EnumFontsFromFontMapper() {
pSystemFontInfo->EnumFontList(pFontMapper);
for (int32_t i = 0; i < pFontMapper->GetFaceSize(); ++i) {
- IFX_FileRead* pFontStream =
+ IFX_SeekableReadStream* pFontStream =
CreateFontStream(pFontMapper, pSystemFontInfo, i);
if (!pFontStream)
continue;
@@ -629,7 +629,7 @@ FX_BOOL CFGAS_FontMgrImp::EnumFontsFromFiles() {
CFX_GEModule::Get()->GetFontMgr()->InitFTLibrary();
FX_POSITION pos = m_pFontSource->GetStartPosition();
IFX_FileAccess* pFontSource = nullptr;
- IFX_FileRead* pFontStream = nullptr;
+ IFX_SeekableReadStream* pFontStream = nullptr;
while (pos) {
pFontSource = m_pFontSource->GetNext(pos);
pFontStream = pFontSource->CreateFileStream(FX_FILEMODE_ReadOnly);
@@ -783,7 +783,8 @@ CFGAS_GEFont* CFGAS_FontMgrImp::GetFontByUnicode(
FX_BOOL CFGAS_FontMgrImp::VerifyUnicode(CFX_FontDescriptor* pDesc,
FX_WCHAR wcUnicode) {
- IFX_FileRead* pFileRead = CreateFontStream(pDesc->m_wsFaceName.UTF8Encode());
+ IFX_SeekableReadStream* pFileRead =
+ CreateFontStream(pDesc->m_wsFaceName.UTF8Encode());
if (!pFileRead)
return FALSE;
FXFT_Face pFace = LoadFace(pFileRead, pDesc->m_nFaceIndex);
@@ -835,7 +836,8 @@ CFGAS_GEFont* CFGAS_FontMgrImp::LoadFont(const CFX_WideString& wsFaceName,
if (!pSystemFontInfo)
return nullptr;
- IFX_FileRead* pFontStream = CreateFontStream(wsFaceName.UTF8Encode());
+ IFX_SeekableReadStream* pFontStream =
+ CreateFontStream(wsFaceName.UTF8Encode());
if (!pFontStream)
return nullptr;
@@ -867,7 +869,8 @@ unsigned long _ftStreamRead(FXFT_Stream stream,
if (count == 0)
return 0;
- IFX_FileRead* pFile = (IFX_FileRead*)stream->descriptor.pointer;
+ IFX_SeekableReadStream* pFile =
+ (IFX_SeekableReadStream*)stream->descriptor.pointer;
int res = pFile->ReadBlock(buffer, offset, count);
if (res)
return count;
@@ -878,7 +881,7 @@ void _ftStreamClose(FXFT_Stream stream) {}
}; // extern "C"
-FXFT_Face CFGAS_FontMgrImp::LoadFace(IFX_FileRead* pFontStream,
+FXFT_Face CFGAS_FontMgrImp::LoadFace(IFX_SeekableReadStream* pFontStream,
int32_t iFaceIndex) {
if (!pFontStream)
return nullptr;
@@ -913,7 +916,7 @@ FXFT_Face CFGAS_FontMgrImp::LoadFace(IFX_FileRead* pFontStream,
return pFace;
}
-IFX_FileRead* CFGAS_FontMgrImp::CreateFontStream(
+IFX_SeekableReadStream* CFGAS_FontMgrImp::CreateFontStream(
CFX_FontMapper* pFontMapper,
IFX_SystemFontInfo* pSystemFontInfo,
uint32_t index) {
@@ -934,7 +937,7 @@ IFX_FileRead* CFGAS_FontMgrImp::CreateFontStream(
return FX_CreateMemoryStream(pBuffer, dwFileSize, TRUE);
}
-IFX_FileRead* CFGAS_FontMgrImp::CreateFontStream(
+IFX_SeekableReadStream* CFGAS_FontMgrImp::CreateFontStream(
const CFX_ByteString& bsFaceName) {
CFX_FontMgr* pFontMgr = CFX_GEModule::Get()->GetFontMgr();
CFX_FontMapper* pFontMapper = pFontMgr->GetBuiltinMapper();
@@ -1111,7 +1114,7 @@ void CFGAS_FontMgrImp::ClearFontCache() {
pos = m_IFXFont2FileRead.GetStartPosition();
while (pos) {
CFGAS_GEFont* pFont;
- IFX_FileRead* pFileRead;
+ IFX_SeekableReadStream* pFileRead;
m_IFXFont2FileRead.GetNextAssoc(pos, pFont, pFileRead);
pFileRead->Release();
}
@@ -1121,7 +1124,7 @@ void CFGAS_FontMgrImp::RemoveFont(CFGAS_GEFont* pEFont) {
if (!pEFont) {
return;
}
- IFX_FileRead* pFileRead;
+ IFX_SeekableReadStream* pFileRead;
if (m_IFXFont2FileRead.Lookup(pEFont, pFileRead)) {
pFileRead->Release();
m_IFXFont2FileRead.RemoveKey(pEFont);
@@ -1179,7 +1182,7 @@ void CFGAS_FontMgrImp::RegisterFace(FXFT_Face pFace,
m_InstalledFonts.Add(pFont.release());
}
-void CFGAS_FontMgrImp::RegisterFaces(IFX_FileRead* pFontStream,
+void CFGAS_FontMgrImp::RegisterFaces(IFX_SeekableReadStream* pFontStream,
const CFX_WideString* pFaceName) {
int32_t index = 0;
int32_t num_faces = 0;
diff --git a/xfa/fgas/font/fgas_stdfontmgr.h b/xfa/fgas/font/fgas_stdfontmgr.h
index 785a47f854..fd7f9cd318 100644
--- a/xfa/fgas/font/fgas_stdfontmgr.h
+++ b/xfa/fgas/font/fgas_stdfontmgr.h
@@ -185,7 +185,7 @@ class CFGAS_FontMgrImp : public IFGAS_FontMgr {
protected:
void RegisterFace(FXFT_Face pFace,
const CFX_WideString* pFaceName);
- void RegisterFaces(IFX_FileRead* pFontStream,
+ void RegisterFaces(IFX_SeekableReadStream* pFontStream,
const CFX_WideString* pFaceName);
void GetNames(const uint8_t* name_table, CFX_WideStringArray& Names);
std::vector<uint16_t> GetCharsets(FXFT_Face pFace) const;
@@ -204,16 +204,16 @@ class CFGAS_FontMgrImp : public IFGAS_FontMgr {
uint32_t dwFontStyles,
const CFX_WideString& FontName,
FX_WCHAR wcUnicode = 0xFFFE);
- FXFT_Face LoadFace(IFX_FileRead* pFontStream, int32_t iFaceIndex);
- IFX_FileRead* CreateFontStream(CFX_FontMapper* pFontMapper,
- IFX_SystemFontInfo* pSystemFontInfo,
- uint32_t index);
- IFX_FileRead* CreateFontStream(const CFX_ByteString& bsFaceName);
+ FXFT_Face LoadFace(IFX_SeekableReadStream* pFontStream, int32_t iFaceIndex);
+ IFX_SeekableReadStream* CreateFontStream(CFX_FontMapper* pFontMapper,
+ IFX_SystemFontInfo* pSystemFontInfo,
+ uint32_t index);
+ IFX_SeekableReadStream* CreateFontStream(const CFX_ByteString& bsFaceName);
CFX_FontDescriptors m_InstalledFonts;
CFX_MapPtrTemplate<uint32_t, CFX_FontDescriptorInfos*> m_Hash2CandidateList;
CFX_MapPtrTemplate<uint32_t, CFX_ArrayTemplate<CFGAS_GEFont*>*> m_Hash2Fonts;
- CFX_MapPtrTemplate<CFGAS_GEFont*, IFX_FileRead*> m_IFXFont2FileRead;
+ CFX_MapPtrTemplate<CFGAS_GEFont*, IFX_SeekableReadStream*> m_IFXFont2FileRead;
CFX_MapPtrTemplate<FX_WCHAR, CFGAS_GEFont*> m_FailedUnicodes2Nullptr;
CFX_FontSourceEnum_File* const m_pFontSource;
};
diff --git a/xfa/fxfa/app/xfa_checksum.cpp b/xfa/fxfa/app/xfa_checksum.cpp
index 5e2b1feb0f..351ae73a03 100644
--- a/xfa/fxfa/app/xfa_checksum.cpp
+++ b/xfa/fxfa/app/xfa_checksum.cpp
@@ -225,7 +225,7 @@ void CXFA_ChecksumContext::StartChecksum() {
m_pSAXReader = new CFX_SAXReader;
}
-FX_BOOL CXFA_ChecksumContext::UpdateChecksum(IFX_FileRead* pSrcFile,
+FX_BOOL CXFA_ChecksumContext::UpdateChecksum(IFX_SeekableReadStream* pSrcFile,
FX_FILESIZE offset,
size_t size) {
if (!m_pSAXReader || !pSrcFile)
diff --git a/xfa/fxfa/app/xfa_ffapp.cpp b/xfa/fxfa/app/xfa_ffapp.cpp
index f233eccf6f..d60d48fa75 100644
--- a/xfa/fxfa/app/xfa_ffapp.cpp
+++ b/xfa/fxfa/app/xfa_ffapp.cpp
@@ -90,7 +90,7 @@ CXFA_FFDocHandler* CXFA_FFApp::GetDocHandler() {
}
CXFA_FFDoc* CXFA_FFApp::CreateDoc(IXFA_DocEnvironment* pDocEnvironment,
- IFX_FileRead* pStream,
+ IFX_SeekableReadStream* pStream,
FX_BOOL bTakeOverFile) {
std::unique_ptr<CXFA_FFDoc> pDoc(new CXFA_FFDoc(this, pDocEnvironment));
FX_BOOL bSuccess = pDoc->OpenDoc(pStream, bTakeOverFile);
diff --git a/xfa/fxfa/app/xfa_ffdoc.cpp b/xfa/fxfa/app/xfa_ffdoc.cpp
index 25c78bd14b..494091b2f9 100644
--- a/xfa/fxfa/app/xfa_ffdoc.cpp
+++ b/xfa/fxfa/app/xfa_ffdoc.cpp
@@ -290,7 +290,8 @@ CXFA_FFDocView* CXFA_FFDoc::GetDocView() {
return it != m_TypeToDocViewMap.end() ? it->second.get() : nullptr;
}
-FX_BOOL CXFA_FFDoc::OpenDoc(IFX_FileRead* pStream, FX_BOOL bTakeOverFile) {
+FX_BOOL CXFA_FFDoc::OpenDoc(IFX_SeekableReadStream* pStream,
+ FX_BOOL bTakeOverFile) {
m_bOwnStream = bTakeOverFile;
m_pStream = pStream;
return TRUE;
@@ -324,7 +325,7 @@ FX_BOOL CXFA_FFDoc::OpenDoc(CPDF_Document* pPDFDoc) {
if (xfaStreams.empty())
return FALSE;
- IFX_FileRead* pFileRead = new CXFA_FileRead(xfaStreams);
+ IFX_SeekableReadStream* pFileRead = new CXFA_FileRead(xfaStreams);
m_pPDFDoc = pPDFDoc;
if (m_pStream) {
m_pStream->Release();
@@ -416,7 +417,7 @@ CFX_DIBitmap* CXFA_FFDoc::GetPDFNamedImage(const CFX_WideStringC& wsName,
CPDF_StreamAcc streamAcc;
streamAcc.LoadAllData(pStream);
- IFX_FileRead* pImageFileRead =
+ IFX_SeekableReadStream* pImageFileRead =
FX_CreateMemoryStream((uint8_t*)streamAcc.GetData(), streamAcc.GetSize());
CFX_DIBitmap* pDibSource = XFA_LoadImageFromBuffer(
@@ -427,7 +428,7 @@ CFX_DIBitmap* CXFA_FFDoc::GetPDFNamedImage(const CFX_WideStringC& wsName,
}
bool CXFA_FFDoc::SavePackage(XFA_HashCode code,
- IFX_FileWrite* pFile,
+ IFX_SeekableWriteStream* pFile,
CXFA_ChecksumContext* pCSContext) {
CXFA_Document* doc = m_pDocumentParser->GetDocument();
@@ -445,7 +446,7 @@ bool CXFA_FFDoc::SavePackage(XFA_HashCode code,
pFile, pNode, 0, bsChecksum.GetLength() ? bsChecksum.c_str() : nullptr);
}
-FX_BOOL CXFA_FFDoc::ImportData(IFX_FileRead* pStream, FX_BOOL bXDP) {
+FX_BOOL CXFA_FFDoc::ImportData(IFX_SeekableReadStream* pStream, FX_BOOL bXDP) {
std::unique_ptr<CXFA_DataImporter> importer(
new CXFA_DataImporter(m_pDocumentParser->GetDocument()));
return importer->ImportData(pStream);
diff --git a/xfa/fxfa/app/xfa_ffwidget.cpp b/xfa/fxfa/app/xfa_ffwidget.cpp
index 0e84ad6be5..c0c559aaf5 100644
--- a/xfa/fxfa/app/xfa_ffwidget.cpp
+++ b/xfa/fxfa/app/xfa_ffwidget.cpp
@@ -1056,7 +1056,7 @@ CFX_DIBitmap* XFA_LoadImageData(CXFA_FFDoc* pDoc,
FXCODEC_IMAGE_TYPE type = XFA_GetImageType(wsContentType);
CFX_ByteString bsContent;
uint8_t* pImageBuffer = nullptr;
- IFX_FileRead* pImageFileRead = nullptr;
+ IFX_SeekableReadStream* pImageFileRead = nullptr;
if (wsImage.GetLength() > 0) {
XFA_ATTRIBUTEENUM iEncoding =
(XFA_ATTRIBUTEENUM)pImage->GetTransferEncoding();
@@ -1117,7 +1117,7 @@ static FXDIB_Format XFA_GetDIBFormat(FXCODEC_IMAGE_TYPE type,
}
return dibFormat;
}
-CFX_DIBitmap* XFA_LoadImageFromBuffer(IFX_FileRead* pImageFileRead,
+CFX_DIBitmap* XFA_LoadImageFromBuffer(IFX_SeekableReadStream* pImageFileRead,
FXCODEC_IMAGE_TYPE type,
int32_t& iImageXDpi,
int32_t& iImageYDpi) {
diff --git a/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp b/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
index 59bbc89717..b5ba3f7fd9 100644
--- a/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
+++ b/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
@@ -4920,7 +4920,7 @@ void CXFA_FM2JSContext::Get(CFXJSE_Value* pThis,
std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
CFX_ByteString urlString;
ValueToUTF8String(argOne.get(), urlString);
- IFX_FileRead* pFile = pAppProvider->DownloadURL(
+ IFX_SeekableReadStream* pFile = pAppProvider->DownloadURL(
CFX_WideString::FromUTF8(urlString.AsStringC()));
if (!pFile)
return;
diff --git a/xfa/fxfa/fxfa.h b/xfa/fxfa/fxfa.h
index a86fb63c4d..8abee52c36 100644
--- a/xfa/fxfa/fxfa.h
+++ b/xfa/fxfa/fxfa.h
@@ -230,7 +230,7 @@ class IXFA_AppProvider {
* @param[in] wsURL - http, ftp, such as
* "http://www.w3.org/TR/REC-xml-names/".
*/
- virtual IFX_FileRead* DownloadURL(const CFX_WideString& wsURL) = 0;
+ virtual IFX_SeekableReadStream* DownloadURL(const CFX_WideString& wsURL) = 0;
/**
* POST data to the given url.
@@ -320,8 +320,9 @@ class IXFA_DocEnvironment {
virtual FX_BOOL SetGlobalProperty(CXFA_FFDoc* hDoc,
const CFX_ByteStringC& szPropName,
CFXJSE_Value* pValue) = 0;
- virtual IFX_FileRead* OpenLinkedFile(CXFA_FFDoc* hDoc,
- const CFX_WideString& wsLink) = 0;
+ virtual IFX_SeekableReadStream* OpenLinkedFile(
+ CXFA_FFDoc* hDoc,
+ const CFX_WideString& wsLink) = 0;
};
class IXFA_WidgetIterator {
diff --git a/xfa/fxfa/parser/cxfa_dataexporter.cpp b/xfa/fxfa/parser/cxfa_dataexporter.cpp
index 8f47b5324d..de2d08bbc2 100644
--- a/xfa/fxfa/parser/cxfa_dataexporter.cpp
+++ b/xfa/fxfa/parser/cxfa_dataexporter.cpp
@@ -199,9 +199,9 @@ void RegenerateFormFile_Changed(CXFA_Node* pNode,
IFX_MemoryStream* pMemStream = FX_CreateMemoryStream(TRUE);
IFX_Stream* pTempStream = IFX_Stream::CreateStream(
- (IFX_FileWrite*)pMemStream, FX_STREAMACCESS_Text |
- FX_STREAMACCESS_Write |
- FX_STREAMACCESS_Append);
+ (IFX_SeekableWriteStream*)pMemStream, FX_STREAMACCESS_Text |
+ FX_STREAMACCESS_Write |
+ FX_STREAMACCESS_Append);
pTempStream->SetCodePage(FX_CODEPAGE_UTF8);
pRichTextXML->SaveXMLNode(pTempStream);
wsChildren += CFX_WideString::FromUTF8(
@@ -444,11 +444,11 @@ CXFA_DataExporter::CXFA_DataExporter(CXFA_Document* pDocument)
ASSERT(m_pDocument);
}
-FX_BOOL CXFA_DataExporter::Export(IFX_FileWrite* pWrite) {
+FX_BOOL CXFA_DataExporter::Export(IFX_SeekableWriteStream* pWrite) {
return Export(pWrite, m_pDocument->GetRoot(), 0, nullptr);
}
-FX_BOOL CXFA_DataExporter::Export(IFX_FileWrite* pWrite,
+FX_BOOL CXFA_DataExporter::Export(IFX_SeekableWriteStream* pWrite,
CXFA_Node* pNode,
uint32_t dwFlag,
const FX_CHAR* pChecksum) {
diff --git a/xfa/fxfa/parser/cxfa_dataexporter.h b/xfa/fxfa/parser/cxfa_dataexporter.h
index 868c20e294..c1123d1fe9 100644
--- a/xfa/fxfa/parser/cxfa_dataexporter.h
+++ b/xfa/fxfa/parser/cxfa_dataexporter.h
@@ -11,15 +11,15 @@
class CXFA_Document;
class CXFA_Node;
-class IFX_FileWrite;
+class IFX_SeekableWriteStream;
class IFX_Stream;
class CXFA_DataExporter {
public:
explicit CXFA_DataExporter(CXFA_Document* pDocument);
- FX_BOOL Export(IFX_FileWrite* pWrite);
- FX_BOOL Export(IFX_FileWrite* pWrite,
+ FX_BOOL Export(IFX_SeekableWriteStream* pWrite);
+ FX_BOOL Export(IFX_SeekableWriteStream* pWrite,
CXFA_Node* pNode,
uint32_t dwFlag,
const FX_CHAR* pChecksum);
diff --git a/xfa/fxfa/parser/cxfa_dataimporter.cpp b/xfa/fxfa/parser/cxfa_dataimporter.cpp
index 92559a1239..62c6536393 100644
--- a/xfa/fxfa/parser/cxfa_dataimporter.cpp
+++ b/xfa/fxfa/parser/cxfa_dataimporter.cpp
@@ -21,7 +21,7 @@ CXFA_DataImporter::CXFA_DataImporter(CXFA_Document* pDocument)
ASSERT(m_pDocument);
}
-FX_BOOL CXFA_DataImporter::ImportData(IFX_FileRead* pDataDocument) {
+FX_BOOL CXFA_DataImporter::ImportData(IFX_SeekableReadStream* pDataDocument) {
std::unique_ptr<CXFA_SimpleParser> pDataDocumentParser(
new CXFA_SimpleParser(m_pDocument, false));
if (pDataDocumentParser->StartParse(pDataDocument, XFA_XDPPACKET_Datasets) !=
diff --git a/xfa/fxfa/parser/cxfa_dataimporter.h b/xfa/fxfa/parser/cxfa_dataimporter.h
index 519fef4410..d01f24cb05 100644
--- a/xfa/fxfa/parser/cxfa_dataimporter.h
+++ b/xfa/fxfa/parser/cxfa_dataimporter.h
@@ -10,13 +10,13 @@
#include "core/fxcrt/fx_system.h"
class CXFA_Document;
-class IFX_FileRead;
+class IFX_SeekableReadStream;
class CXFA_DataImporter {
public:
explicit CXFA_DataImporter(CXFA_Document* pDocument);
- FX_BOOL ImportData(IFX_FileRead* pDataDocument);
+ FX_BOOL ImportData(IFX_SeekableReadStream* pDataDocument);
protected:
CXFA_Document* const m_pDocument;
diff --git a/xfa/fxfa/parser/cxfa_document_parser.cpp b/xfa/fxfa/parser/cxfa_document_parser.cpp
index 459edfa5ec..ea38b3eec9 100644
--- a/xfa/fxfa/parser/cxfa_document_parser.cpp
+++ b/xfa/fxfa/parser/cxfa_document_parser.cpp
@@ -15,7 +15,7 @@ CXFA_DocumentParser::CXFA_DocumentParser(CXFA_FFNotify* pNotify)
CXFA_DocumentParser::~CXFA_DocumentParser() {
}
-int32_t CXFA_DocumentParser::StartParse(IFX_FileRead* pStream,
+int32_t CXFA_DocumentParser::StartParse(IFX_SeekableReadStream* pStream,
XFA_XDPPACKET ePacketID) {
m_pDocument.reset();
m_nodeParser.CloseParser();
diff --git a/xfa/fxfa/parser/cxfa_document_parser.h b/xfa/fxfa/parser/cxfa_document_parser.h
index 3e72f9b258..29aeca39bc 100644
--- a/xfa/fxfa/parser/cxfa_document_parser.h
+++ b/xfa/fxfa/parser/cxfa_document_parser.h
@@ -15,7 +15,7 @@ class CFDE_XMLDoc;
class CXFA_Document;
class CXFA_FFNotify;
class CXFA_Notify;
-class IFX_FileRead;
+class IFX_SeekableReadStream;
class IFX_Pause;
class CXFA_DocumentParser {
@@ -23,7 +23,7 @@ class CXFA_DocumentParser {
explicit CXFA_DocumentParser(CXFA_FFNotify* pNotify);
~CXFA_DocumentParser();
- int32_t StartParse(IFX_FileRead* pStream, XFA_XDPPACKET ePacketID);
+ int32_t StartParse(IFX_SeekableReadStream* pStream, XFA_XDPPACKET ePacketID);
int32_t DoParse(IFX_Pause* pPause);
CFDE_XMLDoc* GetXMLDoc() const;
diff --git a/xfa/fxfa/parser/cxfa_node.cpp b/xfa/fxfa/parser/cxfa_node.cpp
index bf5b6bf964..9c209b23b7 100644
--- a/xfa/fxfa/parser/cxfa_node.cpp
+++ b/xfa/fxfa/parser/cxfa_node.cpp
@@ -1444,7 +1444,7 @@ void CXFA_Node::Script_NodeClass_SaveXML(CFXJSE_Arguments* pArguments) {
pMemoryStream(FX_CreateMemoryStream(TRUE));
std::unique_ptr<IFX_Stream, ReleaseDeleter<IFX_Stream>> pStream(
IFX_Stream::CreateStream(
- static_cast<IFX_FileWrite*>(pMemoryStream.get()),
+ static_cast<IFX_SeekableWriteStream*>(pMemoryStream.get()),
FX_STREAMACCESS_Text | FX_STREAMACCESS_Write |
FX_STREAMACCESS_Append));
if (!pStream) {
diff --git a/xfa/fxfa/parser/cxfa_simple_parser.cpp b/xfa/fxfa/parser/cxfa_simple_parser.cpp
index b8d9fcb318..f40060bca2 100644
--- a/xfa/fxfa/parser/cxfa_simple_parser.cpp
+++ b/xfa/fxfa/parser/cxfa_simple_parser.cpp
@@ -277,7 +277,7 @@ void CXFA_SimpleParser::SetFactory(CXFA_Document* pFactory) {
m_pFactory = pFactory;
}
-int32_t CXFA_SimpleParser::StartParse(IFX_FileRead* pStream,
+int32_t CXFA_SimpleParser::StartParse(IFX_SeekableReadStream* pStream,
XFA_XDPPACKET ePacketID) {
CloseParser();
m_pFileRead = pStream;
diff --git a/xfa/fxfa/parser/cxfa_simple_parser.h b/xfa/fxfa/parser/cxfa_simple_parser.h
index f4d0095c1c..2b1e192e92 100644
--- a/xfa/fxfa/parser/cxfa_simple_parser.h
+++ b/xfa/fxfa/parser/cxfa_simple_parser.h
@@ -15,7 +15,7 @@
class CXFA_Document;
class CXFA_Node;
class CXFA_XMLParser;
-class IFX_FileRead;
+class IFX_SeekableReadStream;
class IFX_Pause;
class IFX_Stream;
@@ -24,7 +24,7 @@ class CXFA_SimpleParser {
CXFA_SimpleParser(CXFA_Document* pFactory, bool bDocumentParser);
~CXFA_SimpleParser();
- int32_t StartParse(IFX_FileRead* pStream, XFA_XDPPACKET ePacketID);
+ int32_t StartParse(IFX_SeekableReadStream* pStream, XFA_XDPPACKET ePacketID);
int32_t DoParse(IFX_Pause* pPause);
int32_t ParseXMLData(const CFX_WideString& wsXML,
CFDE_XMLNode*& pXMLNode,
@@ -78,7 +78,7 @@ class CXFA_SimpleParser {
CXFA_XMLParser* m_pXMLParser;
std::unique_ptr<CFDE_XMLDoc> m_pXMLDoc;
std::unique_ptr<IFX_Stream, ReleaseDeleter<IFX_Stream>> m_pStream;
- IFX_FileRead* m_pFileRead;
+ IFX_SeekableReadStream* m_pFileRead;
CXFA_Document* m_pFactory;
CXFA_Node* m_pRootNode;
XFA_XDPPACKET m_ePacketID;
diff --git a/xfa/fxfa/xfa_checksum.h b/xfa/fxfa/xfa_checksum.h
index 69adc0a023..60312772a9 100644
--- a/xfa/fxfa/xfa_checksum.h
+++ b/xfa/fxfa/xfa_checksum.h
@@ -62,7 +62,7 @@ class CXFA_ChecksumContext {
void StartChecksum();
void Update(const CFX_ByteStringC& bsText);
- FX_BOOL UpdateChecksum(IFX_FileRead* pSrcFile,
+ FX_BOOL UpdateChecksum(IFX_SeekableReadStream* pSrcFile,
FX_FILESIZE offset = 0,
size_t size = 0);
void FinishChecksum();
diff --git a/xfa/fxfa/xfa_ffapp.h b/xfa/fxfa/xfa_ffapp.h
index dd670b83d7..5e8289538b 100644
--- a/xfa/fxfa/xfa_ffapp.h
+++ b/xfa/fxfa/xfa_ffapp.h
@@ -24,12 +24,12 @@ class CXFA_FFDocHandler;
class CXFA_FontMgr;
class IFWL_AdapterTimerMgr;
-class CXFA_FileRead : public IFX_FileRead {
+class CXFA_FileRead : public IFX_SeekableReadStream {
public:
explicit CXFA_FileRead(const std::vector<CPDF_Stream*>& streams);
~CXFA_FileRead() override;
- // IFX_FileRead
+ // IFX_SeekableReadStream
FX_FILESIZE GetSize() override;
FX_BOOL ReadBlock(void* buffer, FX_FILESIZE offset, size_t size) override;
void Release() override;
@@ -44,7 +44,7 @@ class CXFA_FFApp {
~CXFA_FFApp();
CXFA_FFDoc* CreateDoc(IXFA_DocEnvironment* pDocEnvironment,
- IFX_FileRead* pStream,
+ IFX_SeekableReadStream* pStream,
FX_BOOL bTakeOverFile);
CXFA_FFDoc* CreateDoc(IXFA_DocEnvironment* pDocEnvironment,
CPDF_Document* pPDFDoc);
diff --git a/xfa/fxfa/xfa_ffdoc.h b/xfa/fxfa/xfa_ffdoc.h
index 26b56faa82..f1ecd909e3 100644
--- a/xfa/fxfa/xfa_ffdoc.h
+++ b/xfa/fxfa/xfa_ffdoc.h
@@ -35,7 +35,7 @@ class CXFA_FFDoc {
int32_t DoLoad(IFX_Pause* pPause = nullptr);
void StopLoad();
CXFA_FFDocView* CreateDocView(uint32_t dwView = 0);
- FX_BOOL OpenDoc(IFX_FileRead* pStream, FX_BOOL bTakeOverFile);
+ FX_BOOL OpenDoc(IFX_SeekableReadStream* pStream, FX_BOOL bTakeOverFile);
FX_BOOL OpenDoc(CPDF_Document* pPDFDoc);
FX_BOOL CloseDoc();
void SetDocType(uint32_t dwType);
@@ -49,14 +49,14 @@ class CXFA_FFDoc {
int32_t& iImageYDpi);
bool SavePackage(XFA_HashCode code,
- IFX_FileWrite* pFile,
+ IFX_SeekableWriteStream* pFile,
CXFA_ChecksumContext* pCSContext);
- FX_BOOL ImportData(IFX_FileRead* pStream, FX_BOOL bXDP = TRUE);
+ FX_BOOL ImportData(IFX_SeekableReadStream* pStream, FX_BOOL bXDP = TRUE);
protected:
IXFA_DocEnvironment* const m_pDocEnvironment;
std::unique_ptr<CXFA_DocumentParser> m_pDocumentParser;
- IFX_FileRead* m_pStream;
+ IFX_SeekableReadStream* m_pStream;
CXFA_FFApp* m_pApp;
std::unique_ptr<CXFA_FFNotify> m_pNotify;
CPDF_Document* m_pPDFDoc;
diff --git a/xfa/fxfa/xfa_ffwidget.h b/xfa/fxfa/xfa_ffwidget.h
index fe7c136a17..1a09ad1fbd 100644
--- a/xfa/fxfa/xfa_ffwidget.h
+++ b/xfa/fxfa/xfa_ffwidget.h
@@ -164,7 +164,7 @@ CFX_DIBitmap* XFA_LoadImageData(CXFA_FFDoc* pDoc,
FX_BOOL& bNameImage,
int32_t& iImageXDpi,
int32_t& iImageYDpi);
-CFX_DIBitmap* XFA_LoadImageFromBuffer(IFX_FileRead* pImageFileRead,
+CFX_DIBitmap* XFA_LoadImageFromBuffer(IFX_SeekableReadStream* pImageFileRead,
FXCODEC_IMAGE_TYPE type,
int32_t& iImageXDpi,
int32_t& iImageYDpi);