Index: xfa/fgas/crt/fgas_stream.cpp |
diff --git a/xfa/fgas/crt/fgas_stream.cpp b/xfa/fgas/crt/fgas_stream.cpp |
index 966f615676feff74cba9a062174649187ff1bec8..ea854fe00c3ab4276e1c52940fb11b70ef1bca59 100644 |
--- a/xfa/fgas/crt/fgas_stream.cpp |
+++ b/xfa/fgas/crt/fgas_stream.cpp |
@@ -194,9 +194,6 @@ enum FX_STREAMTYPE { |
class CFGAS_Stream : public IFGAS_Stream { |
public: |
- CFGAS_Stream(); |
- ~CFGAS_Stream() override; |
- |
bool LoadFile(const FX_WCHAR* pszSrcFileName, uint32_t dwAccess); |
bool LoadBuffer(uint8_t* pData, int32_t iTotalSize, uint32_t dwAccess); |
bool LoadFileRead(const CFX_RetainPtr<IFX_SeekableReadStream>& pFileRead, |
@@ -227,6 +224,12 @@ class CFGAS_Stream : public IFGAS_Stream { |
int32_t iLength) override; |
protected: |
+ template <typename T, typename... Args> |
+ friend CFX_RetainPtr<T> pdfium::MakeRetain(Args&&... args); |
+ |
+ CFGAS_Stream(); |
+ ~CFGAS_Stream() override; |
+ |
FX_STREAMTYPE m_eStreamType; |
IFGAS_StreamImp* m_pStreamImp; |
uint32_t m_dwAccess; |
@@ -239,9 +242,6 @@ class CFGAS_Stream : public IFGAS_Stream { |
class CFGAS_TextStream : public IFGAS_Stream { |
public: |
- explicit CFGAS_TextStream(const CFX_RetainPtr<IFGAS_Stream>& pStream); |
- ~CFGAS_TextStream() override; |
- |
// IFGAS_Stream |
uint32_t GetAccessModes() const override; |
int32_t GetLength() const override; |
@@ -262,6 +262,12 @@ class CFGAS_TextStream : public IFGAS_Stream { |
int32_t iLength) override; |
protected: |
+ template <typename T, typename... Args> |
+ friend CFX_RetainPtr<T> pdfium::MakeRetain(Args&&... args); |
+ |
+ explicit CFGAS_TextStream(const CFX_RetainPtr<IFGAS_Stream>& pStream); |
+ ~CFGAS_TextStream() override; |
+ |
void InitStream(); |
uint16_t m_wCodePage; |