X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fcql2ccl.c;h=43672e63bf94a4cf5a784fa5cbfbb3a8128a66b0;hb=03dccce903176e61f889b1558834aa5a09f9f8c0;hp=87881e4235992def6f7e0205865d42ea0be85031;hpb=b57542eb8dfd435b7c5f2c02e4b0d9a1a8431521;p=yaz-moved-to-github.git diff --git a/src/cql2ccl.c b/src/cql2ccl.c index 87881e4..43672e6 100644 --- a/src/cql2ccl.c +++ b/src/cql2ccl.c @@ -1,5 +1,5 @@ /* This file is part of the YAZ toolkit. - * Copyright (C) 1995-2011 Index Data + * Copyright (C) 1995-2012 Index Data * See the file LICENSE for details. */ /** @@ -62,7 +62,7 @@ static void pr_term(const char **cpp, int stop_at_space, } pr("#", client_data); } - else if (*cp == ' ') + else if (*cp == ' ' && stop_at_space) break; else { @@ -130,17 +130,20 @@ static int node(struct cql_node *cn, { pr(ccl_field, client_data); pr(ccl_rel, client_data); + if (!split_op) + ccl_rel = 0; } pr_term(&cp, split_op ? 1 : 0, pr, client_data); - if (!split_op) - break; while (*cp == ' ') cp++; if (*cp == '\0') break; pr(" ", client_data); - pr(split_op, client_data); - pr(" ", client_data); + if (split_op) + { + pr(split_op, client_data); + pr(" ", client_data); + } } if (cn->u.st.extra_terms) {