diff options
-rw-r--r-- | lib/ldb/ldb_tdb/ldb_index.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/ldb/ldb_tdb/ldb_index.c b/lib/ldb/ldb_tdb/ldb_index.c index 6da64cfa4ce..3a1aa23aa7e 100644 --- a/lib/ldb/ldb_tdb/ldb_index.c +++ b/lib/ldb/ldb_tdb/ldb_index.c @@ -1626,7 +1626,12 @@ static int ltdb_index_filter(struct ltdb_private *ltdb, LDB_UNPACK_DATA_FLAG_NO_DATA_ALLOC| LDB_UNPACK_DATA_FLAG_NO_VALUES_ALLOC); if (ret == LDB_ERR_NO_SUCH_OBJECT) { - /* the record has disappeared? yes, this can happen */ + /* + * the record has disappeared? yes, this can + * happen if the entry is deleted by something + * operating in the callback (not another + * process, as we have a read lock) + */ talloc_free(msg); continue; } |