Author: jra Date: 2006-03-08 07:18:18 +0000 (Wed, 08 Mar 2006) New Revision: 14028
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=14028 Log: Fix resource leak in error codepath. Coverity CID #64. Jeremy. Modified: trunk/source/tdb/tdb.c Changeset: Modified: trunk/source/tdb/tdb.c =================================================================== --- trunk/source/tdb/tdb.c 2006-03-08 07:13:29 UTC (rev 14027) +++ trunk/source/tdb/tdb.c 2006-03-08 07:18:18 UTC (rev 14028) @@ -1458,10 +1458,14 @@ rec.key_len)) || memcmp(k, oldkey.dptr, oldkey.dsize) != 0) { /* No, it wasn't: unlock it and start from scratch */ - if (unlock_record(tdb, tdb->travlocks.off) != 0) + if (unlock_record(tdb, tdb->travlocks.off) != 0) { + SAFE_FREE(k); return tdb_null; - if (tdb_unlock(tdb, tdb->travlocks.hash, F_WRLCK) != 0) + } + if (tdb_unlock(tdb, tdb->travlocks.hash, F_WRLCK) != 0) { + SAFE_FREE(k); return tdb_null; + } tdb->travlocks.off = 0; }