pdb_tdb: fix the upgrade code, db_traverse returns the number of records!
authorStefan Metzmacher <metze@samba.org>
Mon, 14 Apr 2008 22:12:45 +0000 (00:12 +0200)
committerStefan Metzmacher <metze@samba.org>
Mon, 14 Apr 2008 22:25:11 +0000 (00:25 +0200)
metze
(This used to be commit baaf571d540ace5119c528fd35bceab335bd6741)

source3/passdb/pdb_tdb.c

index 068ddb3692c436d77562db61257153f2d4ad9a37..9c8c7b85179044387e5691dbad041688e64c1bd2 100644 (file)
@@ -775,6 +775,7 @@ static int tdbsam_convert_one(struct db_record *rec, void *priv)
 static bool tdbsam_convert(struct db_context *db, int32 from)
 {
        struct tdbsam_convert_state state;
+       int ret;
 
        state.from = from;
        state.success = true;
@@ -784,7 +785,8 @@ static bool tdbsam_convert(struct db_context *db, int32 from)
                return false;
        }
 
-       if (db->traverse(db, tdbsam_convert_one, &state) != 0) {
+       ret = db->traverse(db, tdbsam_convert_one, &state);
+       if (ret < 0) {
                DEBUG(0, ("traverse failed\n"));
                goto cancel;
        }