X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=rset%2Frset.c;h=5050a1d13af79e06be349e4e0df846bcc65fc68a;hb=d4b2d9a55eff084aa7db77d1aa98e032f4c7659e;hp=18b26f7d8a96749bbaa317a7b32deb32f97ea57b;hpb=b879b04a092d5b00cc866cf16f755e55053d2e89;p=idzebra-moved-to-github.git diff --git a/rset/rset.c b/rset/rset.c index 18b26f7..5050a1d 100644 --- a/rset/rset.c +++ b/rset/rset.c @@ -1,10 +1,28 @@ /* - * Copyright (C) 1994, Index Data I/S + * Copyright (C) 1994-1995, Index Data I/S * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * * $Log: rset.c,v $ - * Revision 1.2 1995-09-04 12:33:56 adam + * Revision 1.7 1995-10-12 12:41:56 adam + * Private info (buf) moved from struct rset_control to struct rset. + * Bug fixes in relevance. + * + * Revision 1.6 1995/09/08 14:52:41 adam + * Work on relevance feedback. + * + * Revision 1.5 1995/09/07 13:58:43 adam + * New parameter: result-set file descriptor (RSFD) to support multiple + * positions within the same result-set. + * Boolean operators: and, or, not implemented. + * + * Revision 1.4 1995/09/06 16:11:56 adam + * More work on boolean sets. + * + * Revision 1.3 1995/09/04 15:20:39 adam + * More work on temp sets. is_open member removed. + * + * Revision 1.2 1995/09/04 12:33:56 adam * Various cleanup. YAZ util used instead. * * Revision 1.1 1994/11/04 13:21:28 quinn @@ -12,8 +30,6 @@ * */ -/* TODO: mem management */ - #include #include @@ -23,16 +39,15 @@ RSET rset_create(const rset_control *sel, void *parms) { RSET new; - new = xmalloc(sizeof(*new)); /* make dynamic alloc scheme */ - if (!(new->control = (*sel->f_create)(sel, parms))) - return 0; + logf (LOG_DEBUG, "rs_create(%s)", sel->desc); + new = xmalloc(sizeof(*new)); + new->control = sel; + new->buf = (*sel->f_create)(sel, parms); return new; } -void rset_delete(RSET rs) +void rset_delete (RSET rs) { - if (rs->is_open) - rset_close(rs); - (*rs->control->f_delete)(rs->control); + (*rs->control->f_delete)(rs); xfree(rs); }