| Index: core/fpdfapi/fpdf_edit/fpdf_edit_create.cpp
|
| diff --git a/core/fpdfapi/fpdf_edit/fpdf_edit_create.cpp b/core/fpdfapi/fpdf_edit/fpdf_edit_create.cpp
|
| index 372506d6cce649e0346ea091576e2e6d6fe4f4d4..7604c6224051bbb48420f99145a7a55d4dd810c6 100644
|
| --- a/core/fpdfapi/fpdf_edit/fpdf_edit_create.cpp
|
| +++ b/core/fpdfapi/fpdf_edit/fpdf_edit_create.cpp
|
| @@ -881,8 +881,10 @@ CPDF_Creator::CPDF_Creator(CPDF_Document* pDoc)
|
| m_bSecurityChanged(FALSE),
|
| m_pEncryptDict(m_pParser ? m_pParser->GetEncryptDict() : nullptr),
|
| m_dwEncryptObjNum(0),
|
| + m_bEncryptCloned(FALSE),
|
| m_pCryptoHandler(m_pParser ? m_pParser->GetCryptoHandler() : nullptr),
|
| m_pMetadata(nullptr),
|
| + m_pXRefStream(nullptr),
|
| m_ObjectStreamSize(200),
|
| m_dwLastObjNum(m_pDocument->GetLastObjNum()),
|
| m_Offset(0),
|
| @@ -1959,11 +1961,9 @@ void CPDF_Creator::InitID(FX_BOOL bDefault) {
|
| CPDF_SecurityHandler handler;
|
| handler.OnCreate(m_pEncryptDict, m_pIDArray, user_pass.raw_str(),
|
| user_pass.GetLength(), flag);
|
| - if (m_bLocalCryptoHandler)
|
| - delete m_pCryptoHandler;
|
| + delete m_pCryptoHandler;
|
| m_pCryptoHandler = new CPDF_CryptoHandler;
|
| m_pCryptoHandler->Init(m_pEncryptDict, &handler);
|
| - m_bLocalCryptoHandler = TRUE;
|
| m_bSecurityChanged = TRUE;
|
| }
|
| }
|
| @@ -2008,10 +2008,6 @@ void CPDF_Creator::RemoveSecurity() {
|
| m_pCryptoHandler = nullptr;
|
| }
|
| void CPDF_Creator::ResetStandardSecurity() {
|
| - if (!m_bLocalCryptoHandler)
|
| - return;
|
| -
|
| delete m_pCryptoHandler;
|
| m_pCryptoHandler = nullptr;
|
| - m_bLocalCryptoHandler = FALSE;
|
| }
|
|
|