SignatureHandler: Fix crash on broken files
Issue #732
diff --git a/poppler/SignatureHandler.cc b/poppler/SignatureHandler.cc
index 18033b4..c825840 100644
--- a/poppler/SignatureHandler.cc
+++ b/poppler/SignatureHandler.cc
@@ -49,6 +49,10 @@
return nullptr;
CERTCertificate *cert = NSS_CMSSignerInfo_GetSigningCertificate(CMSSignerInfo, CERT_GetDefaultCertDB());
+
+ if (!cert)
+ return nullptr;
+
return CERT_GetCommonName(&cert->subject);
}
@@ -397,6 +401,9 @@
if (!NSS_IsInitialized())
return SIGNATURE_GENERIC_ERROR;
+ if (!hash_context)
+ return SIGNATURE_GENERIC_ERROR;
+
digest_buffer = (unsigned char *)PORT_Alloc(hash_length);
unsigned int result_len = 0;