X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=src%2Fsolr.c;h=4ce820c662aa87f43ea51db49fb26d334c21dc1a;hp=0a5ca4021fb6e3e9e10ed9d741d737af6cfd848c;hb=03253a9ef705cd30deb32f68f3d310cef407b1a7;hpb=07127dd94f9d68932f75047f91fd4aed78d2b3cf diff --git a/src/solr.c b/src/solr.c index 0a5ca40..4ce820c 100644 --- a/src/solr.c +++ b/src/solr.c @@ -255,7 +255,9 @@ int yaz_solr_decode_response(ODR o, Z_HTTP_Response *hres, Z_SRW_PDU **pdup) if (ptr->type == XML_ELEMENT_NODE && !strcmp((const char *) ptr->name, "result")) rc_result = yaz_solr_decode_result(o, ptr, sr); - if (match_xml_node_attribute(ptr, "lst", "name", "facet_counts")) + /* TODO The check on hits is a work-around to avoid garbled facets on zero results from the SOLR server. + * The work-around works because the results is before the facets in the xml. */ + if (rc_result == 0 && match_xml_node_attribute(ptr, "lst", "name", "facet_counts")) rc_facets = yaz_solr_decode_facet_counts(o, ptr, sr); } ret = rc_result + rc_facets;