I think hitting an assert is always a bug, while exit(nonzero) is fine. Looks like a small fix anyway, if that's all there is to it.
A quick grep found that back-ldap and back-meta also try to use the result message from ldap_result()==0.
Unless I missed something, all times back-ldap and back-meta ignore ldap_result()==0 it's because no timeout was specified.
p.