From: Dennis Schafroth Date: Tue, 20 Jul 2010 07:32:28 +0000 (+0200) Subject: Fix: set the correct num elements on parsing error X-Git-Tag: v4.0.12~36 X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=commitdiff_plain;h=ae61397330cc9b5ecb90c6f385dd6f22d4037021;hp=ac14cea20cab6607b203ec4d0e63b42008d70e6c Fix: set the correct num elements on parsing error --- diff --git a/src/pquery.c b/src/pquery.c index a7ba2a2..3004c24 100644 --- a/src/pquery.c +++ b/src/pquery.c @@ -875,6 +875,7 @@ Z_FacetList *yaz_pqf_parse_facet_list(ODR odr, const char *facet) { facet_list = odr_malloc(odr, sizeof(*facet_list)); facet_list->num = num_elements; elements = odr_malloc(odr, num_elements * sizeof(*elements)); + facet_list->elements = elements; for (index = 0; index < num_elements;) { const char *pos = strchr(facet, FACET_DElIMITER); if (pos == 0) @@ -883,11 +884,12 @@ Z_FacetList *yaz_pqf_parse_facet_list(ODR odr, const char *facet) { if (elements[index]) { index++; } - else + else { num_elements--; + facet_list->num = num_elements; + } facet = pos + 1; } - facet_list->elements = elements; return facet_list; }