]> code.citadel.org Git - citadel.git/blobdiff - citadel/server/room_ops.c
cdb_next_item() now returns both key and value
[citadel.git] / citadel / server / room_ops.c
index 7c48922f3a6654ffb257153834cea0c2037769a5..804eb3bb62e2628e111d6c88a3aba188ed75e812 100644 (file)
@@ -523,13 +523,13 @@ void lputfloor(struct floor *flbuf, int floor_num) {
 // Iterate through the room table, performing a callback for each room.
 void CtdlForEachRoom(ForEachRoomCallBack callback_func, void *in_data) {
        struct ctdlroom qrbuf;
-       struct cdbdata cdbqr;
+       struct cdbkeyval cdbqr;
 
        cdb_rewind(CDB_ROOMS);
 
-       while (cdbqr = cdb_next_item(CDB_ROOMS), cdbqr.ptr!=NULL) {
+       while (cdbqr = cdb_next_item(CDB_ROOMS), cdbqr.val.ptr!=NULL) {
                memset(&qrbuf, 0, sizeof(struct ctdlroom));
-               memcpy(&qrbuf, cdbqr.ptr, ((cdbqr.len > sizeof(struct ctdlroom)) ?  sizeof(struct ctdlroom) : cdbqr.len) );
+               memcpy(&qrbuf, cdbqr.val.ptr, ((cdbqr.val.len > sizeof(struct ctdlroom)) ?  sizeof(struct ctdlroom) : cdbqr.val.len) );
                room_sanity_check(&qrbuf);
                if (qrbuf.QRflags & QR_INUSE) {
                        callback_func(&qrbuf, in_data);