projects
/
yazproxy-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix null pointer reference - occurred ir query charset was defined
[yazproxy-moved-to-github.git]
/
src
/
yaz-proxy.cpp
diff --git
a/src/yaz-proxy.cpp
b/src/yaz-proxy.cpp
index
1bea004
..
4c17618
100644
(file)
--- a/
src/yaz-proxy.cpp
+++ b/
src/yaz-proxy.cpp
@@
-1,4
+1,4
@@
-/* $Id: yaz-proxy.cpp,v 1.38 2005-10-13 09:58:52 adam Exp $
+/* $Id: yaz-proxy.cpp,v 1.40 2005-11-29 09:17:37 adam Exp $
Copyright (c) 1998-2005, Index Data.
This file is part of the yaz-proxy.
Copyright (c) 1998-2005, Index Data.
This file is part of the yaz-proxy.
@@
-1107,6
+1107,9
@@
int Yaz_Proxy::send_http_response(int code)
m_bytes_sent += len;
m_bw_stat.add_bytes(len);
logtime();
m_bytes_sent += len;
m_bw_stat.add_bytes(len);
logtime();
+
+ recv_GDU_more(true);
+
return r;
}
return r;
}
@@
-1153,6
+1156,9
@@
int Yaz_Proxy::send_srw_response(Z_SRW_PDU *srw_pdu)
m_bytes_sent += len;
m_bw_stat.add_bytes(len);
logtime();
m_bytes_sent += len;
m_bw_stat.add_bytes(len);
logtime();
+
+ recv_GDU_more(true);
+
return r;
}
return r;
}
@@
-2013,9
+2019,10
@@
void Yaz_Proxy::handle_charset_lang_negotiation(Z_APDU *apdu)
{
ODR_MASK_SET(initResponse->options,
Z_Options_negotiationModel);
{
ODR_MASK_SET(initResponse->options,
Z_Options_negotiationModel);
- ODR_MASK_SET(m_initRequest_options,
- Z_Options_negotiationModel);
-
+ if (m_initRequest_options)
+ ODR_MASK_SET(m_initRequest_options,
+ Z_Options_negotiationModel);
+
oi->which = Z_OtherInfo_externallyDefinedInfo;
oi->information.externallyDefinedInfo =
yaz_set_response_charneg(
oi->which = Z_OtherInfo_externallyDefinedInfo;
oi->information.externallyDefinedInfo =
yaz_set_response_charneg(
@@
-2453,6
+2460,7
@@
int Yaz_Proxy::file_access(Z_HTTP_Request *hreq)
}
int len;
send_GDU(gdu, &len);
}
int len;
send_GDU(gdu, &len);
+ recv_GDU_more(true);
return 1;
}
return 1;
}