--- a/lib/vpwtable/gdbm_read.cc Sun Jan 20 00:12:17 2008 +0100
+++ b/lib/vpwtable/gdbm_read.cc Sun Jan 20 00:22:09 2008 +0100
@@ -28,7 +28,7 @@
gdbm_vpwtable_reader(const mystring& filename);
~gdbm_vpwtable_reader();
bool operator!() const;
- bool get(vpwentry& out);
+ vpwentry* get();
bool rewind();
bool end();
};
@@ -77,17 +77,16 @@
return false;
}
-bool gdbm_vpwtable_reader::get(vpwentry& out)
+vpwentry* gdbm_vpwtable_reader::get()
{
+ vpwentry* v = 0;
if(key.dptr) {
mystring name(key.dptr, key.dsize);
datum rec = gdbm_fetch(dbf, key);
mystring result(rec.dptr, rec.dsize);
free(rec.dptr);
- if(!out.from_record(name, result))
- return false;
+ v = vpwentry::new_from_record(name, result);
key = gdbm_nextkey(dbf, key);
- return true;
}
- return false;
+ return v;
}