projects
/
yaz-moved-to-github.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3775cbf
)
cql2cql: convert mask char '*'=>'?'
author
Adam Dickmeiss
<adam@indexdata.dk>
Mon, 20 Jun 2011 09:34:03 +0000
(11:34 +0200)
committer
Adam Dickmeiss
<adam@indexdata.dk>
Mon, 20 Jun 2011 09:34:03 +0000
(11:34 +0200)
src/cql2ccl.c
patch
|
blob
|
history
diff --git
a/src/cql2ccl.c
b/src/cql2ccl.c
index
48bb284
..
f427e7c
100644
(file)
--- a/
src/cql2ccl.c
+++ b/
src/cql2ccl.c
@@
-26,9
+26,19
@@
static void pr_term(struct cql_node *cn,
{
while (cn)
{
{
while (cn)
{
- pr("\"", client_data);
- pr(cn->u.st.term, client_data);
- pr("\"", client_data);
+ const char *cp;
+ cp = cn->u.st.term;
+ while (*cp)
+ {
+ char x[2];
+ if (*cp == '*')
+ x[0] = '?';
+ else
+ x[0] = *cp;
+ x[1] = 0;
+ pr(x, client_data);
+ cp++;
+ }
if (cn->u.st.extra_terms)
pr(" ", client_data);
cn = cn->u.st.extra_terms;
if (cn->u.st.extra_terms)
pr(" ", client_data);
cn = cn->u.st.extra_terms;
@@
-98,7
+108,10
@@
static int node(struct cql_node *cn,
while (*cp && *cp != ' ')
{
char x[2];
while (*cp && *cp != ' ')
{
char x[2];
- x[0] = *cp;
+ if (*cp == '*')
+ x[0] = '?';
+ else
+ x[0] = *cp;
x[1] = '\0';
pr(x, client_data);
cp++;
x[1] = '\0';
pr(x, client_data);
cp++;