X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fcqltransform.c;h=1118dc2a79143ad007d072bad9cdf1dbeee53354;hb=917d2c4a288a19c0da7fa98ad514288d0e045413;hp=ff42293f5df2ad88ca9ebf63a61a039386c8bcda;hpb=7d640b3f9eeb46ab57958aa21b63f26271162ee7;p=yaz-moved-to-github.git diff --git a/src/cqltransform.c b/src/cqltransform.c index ff42293..1118dc2 100644 --- a/src/cqltransform.c +++ b/src/cqltransform.c @@ -191,9 +191,8 @@ static int cql_transform_parse_tok_line(cql_transform_t ct, { ODR pr = odr_createmem(ODR_PRINT); Z_AttributeList *alp = &(*pp)->attr_list; - odr_setprint(pr, yaz_log_file()); + odr_setprint_noclose(pr, yaz_log_file()); z_AttributeList(pr, &alp, 0, 0); - odr_setprint(pr, 0); odr_destroy(pr); } } @@ -340,9 +339,11 @@ const char *cql_lookup_reverse(cql_transform_t ct, for (j = 0; j < attributes->num_attributes; j++) { /* actual attribute */ - Z_AttributeElement *a_ae = attributes->attributes[j]; - int r = compare_attr(e_ae, a_ae); - if (r == 0) + Z_AttributeElement a_ae = *attributes->attributes[j]; + if (a_ae.attributeSet && &e_ae->attributeSet && + !oid_oidcmp(a_ae.attributeSet, yaz_oid_attset_bib_1)) + a_ae.attributeSet = 0; + if (!compare_attr(e_ae, &a_ae)) break; } if (j == attributes->num_attributes)