X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fmodify.c;h=ac05d877c44aa7cf6453a2b141fe7bffa7a0e2f7;hb=HEAD;hp=caa67464a8890e5c9d7f2efe8c972615344d2670;hpb=aa8beb62e4620553d1e17e5b13a77cd13253ca9e;p=openldap diff --git a/servers/slapd/modify.c b/servers/slapd/modify.c index caa67464a8..ac05d877c4 100644 --- a/servers/slapd/modify.c +++ b/servers/slapd/modify.c @@ -1,7 +1,7 @@ /* $OpenLDAP$ */ /* This work is part of OpenLDAP Software . * - * Copyright 1998-2013 The OpenLDAP Foundation. + * Copyright 1998-2018 The OpenLDAP Foundation. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -175,6 +175,10 @@ do_modify( op->o_bd = frontendDB; rs->sr_err = frontendDB->be_modify( op, rs ); + if ( rs->sr_err == SLAPD_ASYNCOP ) { + /* skip cleanup */ + return rs->sr_err; + } #ifdef LDAP_X_TXN if( rs->sr_err == LDAP_X_TXN_SPECIFY_OKAY ) { @@ -747,7 +751,6 @@ slap_sort_vals( if ( match == 0 ) goto done; } if ( jstack == 0 ) break; - if ( match == 0 ) break; ir = istack[jstack--]; l = istack[jstack--]; } else {