Hi all, I noticed a crash when I try to list S/MIME certificates, due to a missing list termination check, in function libbalsa_cert_subject_readable(). To be honest, I have no idea why the function did work at all – using strcmp0() was plain wrong… Best, Albrecht.
diff --git a/libbalsa/gmime-gpgme-signature.c b/libbalsa/gmime-gpgme-signature.c index cab762d3d..8e2d1ceff 100644 --- a/libbalsa/gmime-gpgme-signature.c +++ b/libbalsa/gmime-gpgme-signature.c @@ -268,8 +268,10 @@ libbalsa_cert_subject_readable(const gchar *subject) if (equals) { *equals++ = '\0'; for (ldap_elem = ldap_id_list; - g_strcmp0(ldap_elem->ldap_id, elements[n]) != 0; - ldap_elem++); + (ldap_elem->ldap_id != NULL) && (strcmp(ldap_elem->ldap_id, elements[n]) != 0); + ldap_elem++) { + /* nothing to do */ + } if (ldap_elem->ldap_id != NULL) result = g_string_append(result, ldap_elem->readable); else
Attachment:
pgpg2cK83tfgo.pgp
Description: PGP signature