summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/providers/ldap/sdap_async_accounts.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/providers/ldap/sdap_async_accounts.c b/src/providers/ldap/sdap_async_accounts.c
index 07bf5153f..54416bb12 100644
--- a/src/providers/ldap/sdap_async_accounts.c
+++ b/src/providers/ldap/sdap_async_accounts.c
@@ -1364,7 +1364,7 @@ static int
sdap_process_missing_member_2307(struct sdap_process_group_state *state,
char *username, bool *in_transaction)
{
- int ret;
+ int ret, sret;
struct ldb_dn *dn;
char* dn_string;
@@ -1415,7 +1415,13 @@ sdap_process_missing_member_2307(struct sdap_process_group_state *state,
return EOK;
fail:
if (*in_transaction) {
- sysdb_transaction_cancel(state->sysdb);
+ sret = sysdb_transaction_cancel(state->sysdb);
+ if (sret == EOK) {
+ *in_transaction = false;
+ } else {
+ DEBUG(0, ("Unable to cancel transaction! [%d][%s]\n",
+ sret, strerror(sret)));
+ }
}
return ret;
}