From: Adam Dickmeiss Date: Thu, 19 Jun 2003 19:51:40 +0000 (+0000) Subject: Fix CCL directive @case handling so that it affects both keywords and X-Git-Tag: YAZ.2.0.3~8 X-Git-Url: http://git.indexdata.com/?a=commitdiff_plain;ds=inline;h=484fb80d9d457cb1d2967e0af0c4b88008bec79e;p=yaz-moved-to-github.git Fix CCL directive @case handling so that it affects both keywords and qualifiers. --- diff --git a/CHANGELOG b/CHANGELOG index 720feca..b9aa9a6 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -2,6 +2,9 @@ Possible compatibility problems with earlier versions marked with '*'. --- 2.0.3 2003/06/04 +Fix CCL directive @case handling so that it affects both keywords and +qualifiers. + * ESFormat-Update updates. Packages with OID 1.2.840.10003.9.5.1 and 1.2.840.10003.9.5 are now handled by the same decoder z_IU0Update . Decoder has been updated with ASN.1 changes as listed in diff --git a/ccl/cclqual.c b/ccl/cclqual.c index 3fbb6c3..577c330 100644 --- a/ccl/cclqual.c +++ b/ccl/cclqual.c @@ -44,7 +44,7 @@ /* CCL qualifiers * Europagate, 1995 * - * $Id: cclqual.c,v 1.17 2002-06-06 12:54:24 adam Exp $ + * $Id: cclqual.c,v 1.18 2003-06-19 19:51:40 adam Exp $ * * Old Europagate Log: * @@ -305,14 +305,21 @@ struct ccl_rpn_attr *ccl_qual_search (CCL_parser cclp, int seq) { struct ccl_qualifier *q; + const char *aliases; + int case_sensitive = cclp->ccl_case_sensitive; ccl_assert (cclp); if (!cclp->bibset) return NULL; + + aliases = ccl_qual_search_special(cclp->bibset, "case"); + if (aliases) + case_sensitive = atoi(aliases); + for (q = cclp->bibset->list; q; q = q->next) if (strlen(q->name) == len) { - if (cclp->ccl_case_sensitive) + if (case_sensitive) { if (!memcmp (name, q->name, len)) break;