projects
/
yaz-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Versino 4.2.36
[yaz-moved-to-github.git]
/
src
/
seshigh.c
diff --git
a/src/seshigh.c
b/src/seshigh.c
index
92627c2
..
2ac95fd
100644
(file)
--- a/
src/seshigh.c
+++ b/
src/seshigh.c
@@
-1,5
+1,5
@@
/* This file is part of the YAZ toolkit.
/* 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.
*/
/**
* See the file LICENSE for details.
*/
/**
@@
-270,11
+270,10
@@
int ir_read(IOCHAN h, int event)
if ((assoc->cs_put_mask & EVENT_INPUT) == 0 && (event & assoc->cs_get_mask))
{
if ((assoc->cs_put_mask & EVENT_INPUT) == 0 && (event & assoc->cs_get_mask))
{
- yaz_log(YLOG_DEBUG, "ir_session (input)");
/* We aren't speaking to this fellow */
if (assoc->state == ASSOC_DEAD)
{
/* We aren't speaking to this fellow */
if (assoc->state == ASSOC_DEAD)
{
- yaz_log(log_sessiondetail, "Connection closed - end of session");
+ yaz_log(log_session, "Connection closed - end of session");
cs_close(conn);
destroy_association(assoc);
iochan_destroy(h);
cs_close(conn);
destroy_association(assoc);
iochan_destroy(h);
@@
-297,10
+296,8
@@
int ir_read(IOCHAN h, int event)
}
else if (res <= 0)
{
}
else if (res <= 0)
{
+ assoc->state = ASSOC_DEAD;
yaz_log(log_session, "Connection closed by client");
yaz_log(log_session, "Connection closed by client");
- cs_close(conn);
- destroy_association(assoc);
- iochan_destroy(h);
return 0;
}
else if (res == 1) /* incomplete read - wait for more */
return 0;
}
else if (res == 1) /* incomplete read - wait for more */
@@
-447,7
+444,6
@@
void ir_session(IOCHAN h, int event)
yaz_log(YLOG_DEBUG, "HTTP out:\n%.*s", req->len_response,
req->response);
#endif
yaz_log(YLOG_DEBUG, "HTTP out:\n%.*s", req->len_response,
req->response);
#endif
- nmem_destroy(req->request_mem);
request_deq(&assoc->outgoing);
request_release(req);
if (!request_head(&assoc->outgoing))
request_deq(&assoc->outgoing);
request_release(req);
if (!request_head(&assoc->outgoing))
@@
-764,7
+760,7
@@
static int cql2pqf(ODR odr, const char *cql, cql_transform_t ct,
int r;
int srw_errcode = 0;
const char *add = 0;
int r;
int srw_errcode = 0;
const char *add = 0;
- char rpn_buf[5120];
+ WRBUF rpn_buf = wrbuf_alloc();
*sortkeys_p = 0;
r = cql_parser_string(cp, cql);
*sortkeys_p = 0;
r = cql_parser_string(cp, cql);
@@
-777,7
+773,7
@@
static int cql2pqf(ODR odr, const char *cql, cql_transform_t ct,
struct cql_node *cn = cql_parser_result(cp);
/* Syntax OK */
struct cql_node *cn = cql_parser_result(cp);
/* Syntax OK */
- r = cql_transform_buf(ct, cn, rpn_buf, sizeof(rpn_buf)-1);
+ r = cql_transform(ct, cn, wrbuf_vp_puts, rpn_buf);
if (r)
srw_errcode = cql_transform_error(ct, &add);
else
if (r)
srw_errcode = cql_transform_error(ct, &add);
else
@@
-803,7
+799,7
@@
static int cql2pqf(ODR odr, const char *cql, cql_transform_t ct,
/* Syntax & transform OK. */
/* Convert PQF string to Z39.50 to RPN query struct */
YAZ_PQF_Parser pp = yaz_pqf_create();
/* Syntax & transform OK. */
/* Convert PQF string to Z39.50 to RPN query struct */
YAZ_PQF_Parser pp = yaz_pqf_create();
- Z_RPNQuery *rpnquery = yaz_pqf_parse(pp, odr, rpn_buf);
+ Z_RPNQuery *rpnquery = yaz_pqf_parse(pp, odr, wrbuf_cstr(rpn_buf));
if (!rpnquery)
{
size_t off;
if (!rpnquery)
{
size_t off;
@@
-821,6
+817,7
@@
static int cql2pqf(ODR odr, const char *cql, cql_transform_t ct,
yaz_pqf_destroy(pp);
}
cql_parser_destroy(cp);
yaz_pqf_destroy(pp);
}
cql_parser_destroy(cp);
+ wrbuf_destroy(rpn_buf);
return srw_errcode;
}
return srw_errcode;
}