diff --git a/crypto/x509v3/v3_alt.c b/crypto/x509v3/v3_alt.c
index e639f45..cfc1348 100644
--- a/crypto/x509v3/v3_alt.c
+++ b/crypto/x509v3/v3_alt.c
@@ -596,25 +596,27 @@
 
 static int do_dirname(GENERAL_NAME *gen, char *value, X509V3_CTX *ctx)
 	{
-	int ret;
-	STACK_OF(CONF_VALUE) *sk;
-	X509_NAME *nm;
-	if (!(nm = X509_NAME_new()))
-		return 0;
+	int ret = 0;
+	STACK_OF(CONF_VALUE) *sk = NULL;
+	X509_NAME *nm = X509_NAME_new();
+	if (nm == NULL)
+		goto err;
 	sk = X509V3_get_section(ctx, value);
-	if (!sk)
+	if (sk == NULL)
 		{
 		OPENSSL_PUT_ERROR(X509V3, X509V3_R_SECTION_NOT_FOUND);
 		ERR_add_error_data(2, "section=", value);
-		X509_NAME_free(nm);
-		return 0;
+		goto err;
 		}
 	/* FIXME: should allow other character types... */
-	ret = X509V3_NAME_from_section(nm, sk, MBSTRING_ASC);
+	if (!X509V3_NAME_from_section(nm, sk, MBSTRING_ASC))
+		goto err;
+	gen->d.dirn = nm;
+	ret = 1;
+
+err:
 	if (!ret)
 		X509_NAME_free(nm);
-	gen->d.dirn = nm;
 	X509V3_section_free(ctx, sk);
-		
 	return ret;
 	}
