X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Frecindex.c;h=3e562f47ff6350c7110b75d56ab19afa1f145058;hb=b8844c65622c12fb105bf7fc6bab2fc237af7c14;hp=44de12b31aa0ff3d8490815da3d54e295739f050;hpb=62f6cad37f14a19d9c1ce763ea54a61b350c7881;p=idzebra-moved-to-github.git diff --git a/index/recindex.c b/index/recindex.c index 44de12b..3e562f4 100644 --- a/index/recindex.c +++ b/index/recindex.c @@ -1,10 +1,20 @@ /* - * Copyright (C) 1994-1995, Index Data I/S + * Copyright (C) 1994-1996, Index Data I/S * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * * $Log: recindex.c,v $ - * Revision 1.13 1995-12-11 09:12:49 adam + * Revision 1.16 1996-06-04 10:19:00 adam + * Minor changes - removed include of ctype.h. + * + * 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). @@ -63,7 +73,6 @@ #include #include #include -#include #include "recindxp.h" @@ -370,7 +379,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 +557,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);