summaryrefslogtreecommitdiff
path: root/lib/tdb/common/open.c
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2009-10-22 00:09:43 +1030
committerRusty Russell <rusty@rustcorp.com.au>2009-10-22 00:09:43 +1030
commitb77f41d58b05101e02d8ac0e54cb0e30807d89c2 (patch)
tree9ec20b8f8959ddd0e9338cd5d71e4a31b61fbc41 /lib/tdb/common/open.c
parent703004340c3e0f43f741bd368d2525cfd187d590 (diff)
downloadsamba-b77f41d58b05101e02d8ac0e54cb0e30807d89c2.tar.gz
samba-b77f41d58b05101e02d8ac0e54cb0e30807d89c2.tar.bz2
samba-b77f41d58b05101e02d8ac0e54cb0e30807d89c2.zip
lib/tdb: wean off TDB_ERRCODE.
It was a regrettable hack which I used to reduce line count in tdb; in fact it caused confusion as can be seen in this patch. In particular, ecode now needs to be set before TDB_LOG anyway, and having it exposed in the header is useless (the struct tdb_context isn't defined, so it's doubly useless). Also, we should never set errno, as io.c was doing. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'lib/tdb/common/open.c')
-rw-r--r--lib/tdb/common/open.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/tdb/common/open.c b/lib/tdb/common/open.c
index f0061d7b31..1ba2e7bd11 100644
--- a/lib/tdb/common/open.c
+++ b/lib/tdb/common/open.c
@@ -55,8 +55,10 @@ static int tdb_new_database(struct tdb_context *tdb, int hash_size)
/* We make it up in memory, then write it out if not internal */
size = sizeof(struct tdb_header) + (hash_size+1)*sizeof(tdb_off_t);
- if (!(newdb = (struct tdb_header *)calloc(size, 1)))
- return TDB_ERRCODE(TDB_ERR_OOM, -1);
+ if (!(newdb = (struct tdb_header *)calloc(size, 1))) {
+ tdb->ecode = TDB_ERR_OOM;
+ return -1;
+ }
/* Fill in the header */
newdb->version = TDB_VERSION;