diff --git a/src/kadmin.c b/src/kadmin.c index c9e78ced13d6a1a4a9cf6145c87c1bd7f201707c..4ceffda7a63bcde43a2ece3cce3d8ce2f231ae39 100644 --- a/src/kadmin.c +++ b/src/kadmin.c @@ -309,14 +309,6 @@ static PyKAdminObject *_kadmin_init_with_ccache(PyObject *self, PyObject *args) db_args, &kadmin->server_handle); - if (retval != KADM5_OK) { - - Py_XDECREF(kadmin); - kadmin = NULL; - - PyKAdminError_raise_error(retval, "kadm5_init_with_creds"); - } - cleanup: @@ -328,6 +320,14 @@ cleanup: krb5_free_principal(kadmin->context, princ); krb5_cc_close(kadmin->context, cc); + if (retval != KADM5_OK) { + + Py_XDECREF(kadmin); + kadmin = NULL; + + PyKAdminError_raise_error(retval, "kadm5_init_with_creds"); + } + if (params) free(params);