diff --git a/mozilla/security/nss/lib/certdb/alg1485.c b/mozilla/security/nss/lib/certdb/alg1485.c index 5313c501ed2..d01b1a3f8ea 100644 --- a/mozilla/security/nss/lib/certdb/alg1485.c +++ b/mozilla/security/nss/lib/certdb/alg1485.c @@ -1029,11 +1029,13 @@ cert_GetCertificateEmailAddresses(CERTCertificate *cert) } /* now copy superstring to cert's arena */ finalLen = (pBuf - addrBuf) + 1; - pBuf = PORT_ArenaAlloc(cert->arena, finalLen); - if (pBuf) { - PORT_Memcpy(pBuf, addrBuf, finalLen); + pBuf = NULL; + if (finalLen > 1) { + pBuf = PORT_ArenaAlloc(cert->arena, finalLen); + if (pBuf) { + PORT_Memcpy(pBuf, addrBuf, finalLen); + } } - loser: if (tmpArena) PORT_FreeArena(tmpArena, PR_FALSE);