X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fseshigh.c;h=6e18d01dce7eec4e3b3ba46eee34275572e9a62f;hb=854382b8be93e0673106fa27474a01149b2a04ce;hp=eb99a79a2353a7858adbfb5aad18b5aca80f037f;hpb=60b23781949540ad214a331fa335da10f42fae7f;p=yaz-moved-to-github.git diff --git a/src/seshigh.c b/src/seshigh.c index eb99a79..6e18d01 100644 --- a/src/seshigh.c +++ b/src/seshigh.c @@ -74,7 +74,7 @@ #include #include #include - +#include #include #include #include @@ -2707,6 +2707,19 @@ static Z_APDU *process_searchRequest(association *assoc, request *reqb) bsrr->search_input = req->otherInfo; bsrr->present_number = *req->mediumSetPresentNumber; + if (assoc->server && assoc->server->client_query_charset && + req->query->which == Z_Query_type_1) + { + yaz_iconv_t cd = + yaz_iconv_open("UTF-8", assoc->server->client_query_charset); + if (cd) + { + yaz_query_charset_convert_rpnquery(req->query->u.type_1, + assoc->decode, cd); + yaz_iconv_close(cd); + } + } + if (assoc->server && assoc->server->cql_transform && req->query->which == Z_Query_type_104 && req->query->u.type_104->which == Z_External_CQL)