X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;f=src%2Fyaz-proxy.cpp;h=8c554807bdb604ceb21741e6c1da808381a0f8ed;hb=cf31d3a2ea92d91c8e1b9ca07b355a65ebf43b2f;hp=17ed69ee52b4dd72d91f8ad1a76917d5e1d5492d;hpb=6b6d0482e926e0e6de58ab13a2998cd93a4d6a58;p=yazproxy-moved-to-github.git diff --git a/src/yaz-proxy.cpp b/src/yaz-proxy.cpp index 17ed69e..8c55480 100644 --- a/src/yaz-proxy.cpp +++ b/src/yaz-proxy.cpp @@ -1,4 +1,4 @@ -/* $Id: yaz-proxy.cpp,v 1.24.2.1 2005-05-27 18:00:28 adam Exp $ +/* $Id: yaz-proxy.cpp,v 1.24.2.3 2006-03-09 00:08:07 adam Exp $ Copyright (c) 1998-2005, Index Data. This file is part of the yaz-proxy. @@ -851,7 +851,7 @@ void Yaz_Proxy::convert_to_marcxml(Z_NamePlusRecordList *p, { WRBUF w = wrbuf_alloc(); - yaz_display_OPAC(w, r->u.opac, 0); + yaz_opac_decode_wrbuf(mt, r->u.opac, w); npr->u.databaseRecord = z_ext_record( odr_encode(), VAL_TEXT_XML, wrbuf_buf(w), wrbuf_len(w) @@ -2505,14 +2505,15 @@ void Yaz_Proxy::handle_incoming_Z_PDU(Z_APDU *apdu) m_initRequest_maximumRecordSize = *apdu->u.initRequest-> maximumRecordSize; *apdu->u.initRequest->maximumRecordSize = 1024*1024; - + + Z_CharSetandLanguageNegotiation *charSetandLangRecord = + yaz_get_charneg_record(*oi); + // Save proposal charsets and langs. if (ODR_MASK_GET(apdu->u.initRequest->options, - Z_Options_negotiationModel)) + Z_Options_negotiationModel) + && charSetandLangRecord) { - Z_CharSetandLanguageNegotiation *charSetandLangRecord = - yaz_get_charneg_record(*oi); - yaz_get_proposal_charneg(m_referenceId_mem, charSetandLangRecord, &m_initRequest_oi_negotiation_charsets,