diff options
author | Andrew Tridgell <tridge@samba.org> | 2000-05-27 03:37:05 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2000-05-27 03:37:05 +0000 |
commit | 11010f946af4d60d88bed450692e43c6a7860ab7 (patch) | |
tree | 75295bef9bdb515198a00970740e76acffb6d0c5 | |
parent | bf33b10a43a42c3ec5dbfdc713869c4aeb452aef (diff) | |
download | samba-11010f946af4d60d88bed450692e43c6a7860ab7.tar.gz samba-11010f946af4d60d88bed450692e43c6a7860ab7.tar.xz samba-11010f946af4d60d88bed450692e43c6a7860ab7.zip |
fixed call of firstkey/nextkey to traverse driver database
-rw-r--r-- | source/printing/nt_printing.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source/printing/nt_printing.c b/source/printing/nt_printing.c index 56b6a4c5702..90271333e8a 100644 --- a/source/printing/nt_printing.c +++ b/source/printing/nt_printing.c @@ -62,14 +62,14 @@ get a form struct list ****************************************************************************/ int get_ntforms(nt_forms_struct **list) { - TDB_DATA kbuf, dbuf; + TDB_DATA kbuf, newkey, dbuf; nt_forms_struct form; int ret; int n = 0; for (kbuf = tdb_firstkey(tdb); kbuf.dptr; - free(kbuf.dptr), kbuf = tdb_nextkey(tdb, kbuf)) { + newkey = tdb_nextkey(tdb, kbuf), free(kbuf.dptr), kbuf=newkey) { if (strncmp(kbuf.dptr, FORMS_PREFIX, strlen(FORMS_PREFIX)) != 0) continue; dbuf = tdb_fetch(tdb, kbuf); @@ -201,14 +201,14 @@ int get_ntdrivers(fstring **list, char *architecture) int total=0; fstring short_archi; pstring key; - TDB_DATA kbuf; + TDB_DATA kbuf, newkey; get_short_archi(short_archi, architecture); slprintf(key, sizeof(key), "%s/%s/", DRIVERS_PREFIX, short_archi); for (kbuf = tdb_firstkey(tdb); kbuf.dptr; - free(kbuf.dptr), kbuf = tdb_nextkey(tdb, kbuf)) { + newkey = tdb_nextkey(tdb, kbuf), free(kbuf.dptr), kbuf=newkey) { if (strncmp(kbuf.dptr, key, strlen(key)) != 0) continue; if((*list = Realloc(*list, sizeof(fstring)*(total+1))) == NULL) |