Index: core/src/fpdfapi/fpdf_parser/fpdf_parser_encrypt.cpp |
diff --git a/core/src/fpdfapi/fpdf_parser/fpdf_parser_encrypt.cpp b/core/src/fpdfapi/fpdf_parser/fpdf_parser_encrypt.cpp |
index e09bbbbb2e9a3ade9566d74db700d43f96447536..c06bc82969eeb593422d6b76b933d78cd631ac30 100644 |
--- a/core/src/fpdfapi/fpdf_parser/fpdf_parser_encrypt.cpp |
+++ b/core/src/fpdfapi/fpdf_parser/fpdf_parser_encrypt.cpp |
@@ -406,6 +406,7 @@ FX_BOOL CPDF_StandardSecurityHandler::CheckUserPassword(FX_LPCBYTE password, FX_ |
copy_len = ukey.GetLength(); |
} |
FXSYS_memset32(test, 0, sizeof(test)); |
+ FXSYS_memset32(tmpkey, 0, sizeof(tmpkey)); |
FXSYS_memcpy32(test, (FX_LPCSTR)ukey, copy_len); |
for (int i = 19; i >= 0; i --) { |
for (int j = 0; j < key_len; j ++) { |
@@ -466,6 +467,7 @@ CFX_ByteString CPDF_StandardSecurityHandler::GetUserPassword(FX_LPCBYTE owner_pa |
} else { |
for (int i = 19; i >= 0; i --) { |
FX_BYTE tempkey[32]; |
+ FXSYS_memset32(tempkey, 0, 32); |
palmer
2014/07/10 18:27:32
Use sizeof(tempkey) as above.
Bo Xu
2014/07/10 18:46:42
Done
|
for (int j = 0; j < m_KeyLen; j ++) { |
tempkey[j] = enckey[j] ^ i; |
} |