X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fdb-emul.c;h=62540de84592e70b70245ac13891fd77bdbefbf3;hb=86919305a08aa88b3a60c3216752291ba7f0b496;hp=533c996f156e2d4e8b572181f59ef66d43269b25;hpb=9b3b0ecccff2620fc82bf77d872ba0c9f841201f;p=libucw.git diff --git a/lib/db-emul.c b/lib/db-emul.c index 533c996f..62540de8 100644 --- a/lib/db-emul.c +++ b/lib/db-emul.c @@ -1,16 +1,19 @@ /* - * Sherlock Library -- SDBM emulator at top of GDBM + * UCW Library -- SDBM emulator at top of GDBM * - * (c) 1999 Martin Mares + * (c) 1999 Martin Mares + * + * This software may be freely distributed and used according to the terms + * of the GNU Lesser General Public License. */ +#include "lib/lib.h" +#include "lib/db.h" + #include #include #include -#include "lib.h" -#include "db.h" - #include struct sdbm { @@ -39,7 +42,7 @@ sdbm_close(struct sdbm *d) { sdbm_rewind(d); gdbm_close(d->db); - free(d); + xfree(d); } static int @@ -110,7 +113,7 @@ sdbm_fetch(struct sdbm *d, byte *key, uns keylen, byte *val, uns *vallen) if (!V.dptr) return 0; rc = sdbm_put_user(V.dptr, V.dsize, val, vallen); - free(V.dptr); + xfree(V.dptr); return rc ? SDBM_ERROR_TOO_LARGE : 1; } @@ -119,7 +122,7 @@ sdbm_rewind(struct sdbm *d) { if (d->prevkey.dptr) { - free(d->prevkey.dptr); + xfree(d->prevkey.dptr); d->prevkey.dptr = NULL; } } @@ -132,7 +135,7 @@ sdbm_get_next(struct sdbm *d, byte *key, uns *keylen, byte *val, uns *vallen) if (d->prevkey.dptr) { K = gdbm_nextkey(d->db, d->prevkey); - free(d->prevkey.dptr); + xfree(d->prevkey.dptr); } else K = gdbm_firstkey(d->db);