X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;f=index%2Frecindex.c;h=936f6e0c895a981a925780d365874692586f4412;hb=bad279c5dd1ae783ef9393775f0483cc3228cdbb;hp=44de12b31aa0ff3d8490815da3d54e295739f050;hpb=62f6cad37f14a19d9c1ce763ea54a61b350c7881;p=idzebra-moved-to-github.git diff --git a/index/recindex.c b/index/recindex.c index 44de12b..936f6e0 100644 --- a/index/recindex.c +++ b/index/recindex.c @@ -4,7 +4,14 @@ * Sebastian Hammer, Adam Dickmeiss * * $Log: recindex.c,v $ - * Revision 1.13 1995-12-11 09:12:49 adam + * Revision 1.15 1996-05-13 14:23:06 adam + * Work on compaction of set/use bytes in dictionary. + * + * Revision 1.14 1996/02/01 20:48:15 adam + * The total size of records are always checked in rec_cache_insert to + * reduce memory usage. + * + * Revision 1.13 1995/12/11 09:12:49 adam * The rec_get function returns NULL if record doesn't exist - will * happen in the server if the result set records have been deleted since * the creation of the set (i.e. the search). @@ -370,7 +377,7 @@ static void rec_cache_insert (Records p, Record rec, enum recordCacheFlag flag) if (p->cache_cur == p->cache_max) rec_cache_flush (p, 1); - else if (p->cache_cur > 2) + else if (p->cache_cur > 0) { int i, j; int used = 0; @@ -548,6 +555,9 @@ void rec_put (Records p, Record *recpp) void rec_rm (Record *recpp) { int i; + + if (!*recpp) + return ; for (i = 0; i < REC_NO_INFO; i++) xfree ((*recpp)->info[i]); xfree (*recpp);