summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2011-04-08 16:51:49 +0200
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2011-04-08 16:51:49 +0200
commitd05d2dee530d4fbf11b7e3f19f50a40fd1471847 (patch)
tree2a9d03acb756fd3b46d4399bc2f7e13699e3fb46
parentabaf76cd80782c3139c8a630e479a04d5a9c975f (diff)
downloadgnutls-d05d2dee530d4fbf11b7e3f19f50a40fd1471847.tar.gz
more fixes.
-rw-r--r--lib/auth_dh_common.c8
-rw-r--r--lib/gnutls_privkey.c3
2 files changed, 9 insertions, 2 deletions
diff --git a/lib/auth_dh_common.c b/lib/auth_dh_common.c
index ea9062c5cf..8bcd42374e 100644
--- a/lib/auth_dh_common.c
+++ b/lib/auth_dh_common.c
@@ -208,8 +208,12 @@ _gnutls_gen_dh_common_client_kx_int (gnutls_session_t session, opaque ** data, g
error:
_gnutls_mpi_release (&x);
_gnutls_mpi_release (&X);
- gnutls_free (*data);
- *data = NULL;
+
+ if (ret < 0)
+ {
+ gnutls_free (*data);
+ *data = NULL;
+ }
return ret;
}
diff --git a/lib/gnutls_privkey.c b/lib/gnutls_privkey.c
index 9597572312..1996016c44 100644
--- a/lib/gnutls_privkey.c
+++ b/lib/gnutls_privkey.c
@@ -273,11 +273,14 @@ gnutls_privkey_deinit (gnutls_privkey_t key)
#ifdef ENABLE_OPENPGP
case GNUTLS_PRIVKEY_OPENPGP:
gnutls_openpgp_privkey_deinit (key->key.openpgp);
+ break;
#endif
case GNUTLS_PRIVKEY_PKCS11:
gnutls_pkcs11_privkey_deinit (key->key.pkcs11);
+ break;
case GNUTLS_PRIVKEY_X509:
gnutls_x509_privkey_deinit (key->key.x509);
+ break;
}
gnutls_free (key);
}