for (i=0; i<count; i++) nssCertificate_AddRef(rvOpt[i]);
nssCertificateStore_FindCertificatesByEmail(  nssCertificateStore *store,  NSSASCII7 *email,  NSSCertificate *rvOpt[],  PRUint32 maximumOpt,  NSSArena *arenaOpt){    PRUint32 i, count;    NSSCertificate **rvArray = NULL;    struct email_template_str et;    et.email = email;    et.emailList = nssList_Create(NULL, PR_FALSE);    if (!et.emailList) {	return NULL;    }    PZ_Lock(store->lock);    nssHash_Iterate(store->subject, match_email, &et);    PZ_Unlock(store->lock);    if (et.emailList) {	count = nssList_Count(et.emailList);	if (maximumOpt > 0) {	    count = PR_MIN(maximumOpt, count);	}	if (rvOpt) {	    nssList_GetArray(et.emailList, (void **)rvOpt, count);	    for (i=0; i<count; i++) nssCertificate_AddRef(rvOpt[i]);	} else {	    rvArray = nss_ZNEWARRAY(arenaOpt, NSSCertificate *, count + 1);	    if (rvArray) {		nssList_GetArray(et.emailList, (void **)rvArray, count);		for (i=0; i<count; i++) nssCertificate_AddRef(rvArray[i]);	    }	}	nssList_Destroy(et.emailList);    }    return rvArray;}