From: Rusty Russell Date: Tue, 2 Feb 2010 01:34:25 +0000 (+1030) Subject: Import f5c992bdaeb73ef726ff4728a9922721474cd6f5 from ctdb: X-Git-Url: https://git.ozlabs.org/?p=ccan;a=commitdiff_plain;h=56320b5f5df1e8cafd60cab44760308b33645dea Import f5c992bdaeb73ef726ff4728a9922721474cd6f5 from ctdb: tdb: reset tdb->fd to -1 in tdb_close() So that erroneous double tdb_close() calls do not try to close() same fd again. This is like SAFE_FREE() but for fd. Signed-off-by: Kirill Smelkov Signed-off-by: Rusty Russell (cherry picked from samba commit b4424f8234a78a79fb2d71d46ca208b4f12e0f9e) Signed-off-by: Stefan Metzmacher --- diff --git a/ccan/tdb/open.c b/ccan/tdb/open.c index 8b977686..50f60816 100644 --- a/ccan/tdb/open.c +++ b/ccan/tdb/open.c @@ -403,8 +403,10 @@ int tdb_close(struct tdb_context *tdb) tdb_munmap(tdb); } SAFE_FREE(tdb->name); - if (tdb->fd != -1) + if (tdb->fd != -1) { ret = close(tdb->fd); + tdb->fd = -1; + } SAFE_FREE(tdb->lockrecs); /* Remove from contexts list */