|| META_BACK_ONERR_STOP( mi ) )
{
const char *save_text = rs->sr_text;
+got_err:
savepriv = op->o_private;
op->o_private = (void *)i;
rs->sr_text = candidates[ i ].sr_text;
op->o_private = savepriv;
ldap_msgfree( res );
res = NULL;
+ ldap_controls_free( ctrls );
goto finish;
}
break;
default:
candidates[ i ].sr_err = rs->sr_err;
- if ( META_BACK_ONERR_STOP( mi ) ) {
- const char *save_text = rs->sr_text;
- savepriv = op->o_private;
- op->o_private = (void *)i;
- rs->sr_text = candidates[ i ].sr_text;
- send_ldap_result( op, rs );
- rs->sr_text = save_text;
- op->o_private = savepriv;
- ldap_msgfree( res );
- res = NULL;
- goto finish;
- }
+ if ( META_BACK_ONERR_STOP( mi ) )
+ goto got_err;
break;
}
Debug( LDAP_DEBUG_TRACE, "backsql_load_schema_map(): "
"unable to parse id=\"%s\"\n",
oc_row.cols[ 0 ], 0, 0 );
+ ch_free( oc_map );
return LDAP_OTHER;
}