X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Falvis.c;h=4ae6140a9f385a11c7adf3a4e0abc596a92569f9;hb=bd797d70f666280cdf941337d86b438a8d2506fc;hp=851064fdbb723b26569ffbf629862397afd6946f;hpb=fd10c2116175815cf6c2da430a439c27991e1918;p=idzebra-moved-to-github.git diff --git a/index/alvis.c b/index/alvis.c index 851064f..4ae6140 100644 --- a/index/alvis.c +++ b/index/alvis.c @@ -1,5 +1,5 @@ -/* $Id: alvis.c,v 1.9 2006-12-22 12:13:40 adam Exp $ - Copyright (C) 1995-2006 +/* $Id: alvis.c,v 1.13 2007-02-18 21:50:52 adam Exp $ + Copyright (C) 1995-2007 Index Data ApS This file is part of the Zebra server. @@ -345,6 +345,7 @@ static void filter_destroy(void *clientData) { struct filter_info *tinfo = clientData; destroy_schemas(tinfo); + xfree(tinfo->full_name); if (tinfo->reader) xmlFreeTextReader(tinfo->reader); odr_destroy(tinfo->odr); @@ -434,13 +435,7 @@ static void index_record(struct filter_info *tinfo,struct recExtractCtrl *ctrl, sscanf(id_str, "%255s", ctrl->match_criteria); if (rank_str) - ctrl->staticrank = -#if HAVE_ATOLL - atoll(rank_str); -#else - atoi(rank_str); -#endif - + ctrl->staticrank = atozint(rank_str); ptr = ptr->children; } @@ -513,7 +508,7 @@ static int extract_split(struct filter_info *tinfo, struct recExtractCtrl *p) p /* I/O handler */, 0 /* URL */, 0 /* encoding */, - XML_PARSE_XINCLUDE); + XML_PARSE_XINCLUDE|XML_PARSE_NOENT); } if (!tinfo->reader) return RECCTRL_EXTRACT_ERROR_GENERIC; @@ -556,7 +551,7 @@ static int extract_full(struct filter_info *tinfo, struct recExtractCtrl *p) xmlDocPtr doc = xmlReadIO(ioread_ex, ioclose_ex, p /* I/O handler */, 0 /* URL */, 0 /* encoding */, - XML_PARSE_XINCLUDE); + XML_PARSE_XINCLUDE|XML_PARSE_NOENT); if (!doc) { return RECCTRL_EXTRACT_ERROR_GENERIC; @@ -700,7 +695,7 @@ static int filter_retrieve (void *clientData, struct recRetrieveCtrl *p) doc = xmlReadIO(ioread_ret, ioclose_ret, p /* I/O handler */, 0 /* URL */, 0 /* encoding */, - XML_PARSE_XINCLUDE); + XML_PARSE_XINCLUDE|XML_PARSE_NOENT); if (!doc) { p->diagnostic = YAZ_BIB1_SYSTEM_ERROR_IN_PRESENTING_RECORDS;