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:
fa3ba53
)
Fixed charset spec parsing for ZOOM_record_get
author
Adam Dickmeiss
<adam@indexdata.dk>
Tue, 6 Apr 2004 17:47:24 +0000
(17:47 +0000)
committer
Adam Dickmeiss
<adam@indexdata.dk>
Tue, 6 Apr 2004 17:47:24 +0000
(17:47 +0000)
src/zoom-c.c
patch
|
blob
|
history
diff --git
a/src/zoom-c.c
b/src/zoom-c.c
index
0c6f48e
..
b5241f3
100644
(file)
--- a/
src/zoom-c.c
+++ b/
src/zoom-c.c
@@
-2,7
+2,7
@@
* Copyright (c) 2000-2004, Index Data
* See the file LICENSE for details.
*
* Copyright (c) 2000-2004, Index Data
* See the file LICENSE for details.
*
- * $Id: zoom-c.c,v 1.25 2004-02-23 09:26:11 adam Exp $
+ * $Id: zoom-c.c,v 1.26 2004-04-06 17:47:24 adam Exp $
*
* ZOOM layer for C, connections, result sets, queries.
*/
*
* ZOOM layer for C, connections, result sets, queries.
*/
@@
-987,7
+987,7
@@
static zoom_ret ZOOM_connection_send_init (ZOOM_connection c)
ZOOM_options_get(c->options, "implementationName"),
odr_prepend(c->odr_out, "ZOOM-C", ireq->implementationName));
ZOOM_options_get(c->options, "implementationName"),
odr_prepend(c->odr_out, "ZOOM-C", ireq->implementationName));
- version = odr_strdup(c->odr_out, "$Revision: 1.25 $");
+ version = odr_strdup(c->odr_out, "$Revision: 1.26 $");
if (strlen(version) > 10) /* check for unexpanded CVS strings */
version[strlen(version)-2] = '\0';
ireq->implementationVersion = odr_prepend(c->odr_out,
if (strlen(version) > 10) /* check for unexpanded CVS strings */
version[strlen(version)-2] = '\0';
ireq->implementationVersion = odr_prepend(c->odr_out,
@@
-1589,21
+1589,23
@@
ZOOM_record_get (ZOOM_record rec, const char *type_spec, int *len)
i++;
if (!strncmp(type_spec+i, "charset=", 8))
{
i++;
if (!strncmp(type_spec+i, "charset=", 8))
{
- cp = type_spec+i+8;
- for (i = 0; cp[i] && i < sizeof(charset)-1; i++)
+ int j = 0;
+ i = i + 8; /* skip charset= */
+ for (j = 0; type_spec[i] && j < sizeof(charset)-1; i++, j++)
{
{
- if (cp[i] == ';' || cp[i] == ' ')
+ if (type_spec[i] == ';' || type_spec[i] == ' ')
break;
break;
- charset[i] = cp[i];
+ charset[j] = cp[i];
}
}
- charset[i] = '\0';
+ charset[j] = '\0';
}
else if (!strncmp(type_spec+i, "xpath=", 6))
{
}
else if (!strncmp(type_spec+i, "xpath=", 6))
{
- cp = type_spec+i+6;
- for (i = 0; cp[i] && i < sizeof(xpath)-1; i++)
- xpath[i] = cp[i];
- xpath[i] = '\0';
+ int j = 0;
+ i = i + 6;
+ for (j = 0; type_spec[i] && j < sizeof(xpath)-1; i++, j++)
+ xpath[j] = cp[i];
+ xpath[j] = '\0';
}
while (type_spec[i] == ' ')
i++;
}
while (type_spec[i] == ' ')
i++;