s3-printing: skip metadata entry when traversing printerlist.
authorGünther Deschner <gd@samba.org>
Tue, 28 Sep 2010 23:18:07 +0000 (01:18 +0200)
committerGünther Deschner <gd@samba.org>
Tue, 28 Sep 2010 23:23:54 +0000 (01:23 +0200)
We were creating a new printer (with a very broken name) out of the
lasttimestamp entry all the time.

Simo, please check.

Guenther

source3/printing/printer_list.c

index 667ff70a052c3ec4bf9537ffd26df8050f72ef63..8e9e06ac7ed5dafc89f989e0375c7f83b92074ed 100644 (file)
@@ -380,6 +380,11 @@ static int printer_list_exec_fn(struct db_record *rec, void *private_data)
        char *comment;
        int ret;
 
+       /* always skip PL_TIMESTAMP_KEY key */
+       if (strequal((const char *)rec->key.dptr, PL_TIMESTAMP_KEY)) {
+               return 0;
+       }
+
        ret = tdb_unpack(rec->value.dptr, rec->value.dsize,
                         PL_DATA_FORMAT, &time_h, &time_l, &name, &comment);
        if (ret == -1) {