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
Rolling tweaks, not yet running
[yaz-moved-to-github.git]
/
src
/
soap.c
diff --git
a/src/soap.c
b/src/soap.c
index
316cae8
..
5eb176f
100644
(file)
--- a/
src/soap.c
+++ b/
src/soap.c
@@
-2,7
+2,7
@@
* Copyright (c) 2002-2004, Index Data.
* See the file LICENSE for details.
*
* Copyright (c) 2002-2004, Index Data.
* See the file LICENSE for details.
*
- * $Id: soap.c,v 1.5 2004-01-07 20:36:44 adam Exp $
+ * $Id: soap.c,v 1.7 2004-01-14 00:15:56 adam Exp $
*/
#include <yaz/soap.h>
*/
#include <yaz/soap.h>
@@
-14,11
+14,11
@@
static const char *soap_v1_1 = "http://schemas.xmlsoap.org/soap/envelope/";
static const char *soap_v1_2 = "http://www.w3.org/2001/06/soap-envelope";
static const char *soap_v1_1 = "http://schemas.xmlsoap.org/soap/envelope/";
static const char *soap_v1_2 = "http://www.w3.org/2001/06/soap-envelope";
-int z_soap_codec_enc(ODR o, Z_SOAP **pp,
- char **content_buf, int *content_len,
- Z_SOAP_Handler *handlers,
- const char *encoding,
- const char *stylesheet)
+int z_soap_codec_enc_xsl(ODR o, Z_SOAP **pp,
+ char **content_buf, int *content_len,
+ Z_SOAP_Handler *handlers,
+ const char *encoding,
+ const char *stylesheet)
{
if (o->direction == ODR_DECODE)
{
{
if (o->direction == ODR_DECODE)
{
@@
-203,6
+203,8
@@
int z_soap_codec_enc(ODR o, Z_SOAP **pp,
if (p->which == Z_SOAP_generic && !strcmp(p->ns, "SRU"))
{
xmlDocSetRootElement(doc, body_ptr->children);
if (p->which == Z_SOAP_generic && !strcmp(p->ns, "SRU"))
{
xmlDocSetRootElement(doc, body_ptr->children);
+ body_ptr->children = 0;
+ xmlFreeNode(envelope_ptr);
}
if (stylesheet)
{
}
if (stylesheet)
{
@@
-232,10
+234,10
@@
int z_soap_codec_enc(ODR o, Z_SOAP **pp,
return 0;
}
#else
return 0;
}
#else
-int z_soap_codec_enc(ODR o, Z_SOAP **pp,
- char **content_buf, int *content_len,
- Z_SOAP_Handler *handlers, const char *encoding,
- const char *stylesheet)
+int z_soap_codec_enc_xsl(ODR o, Z_SOAP **pp,
+ char **content_buf, int *content_len,
+ Z_SOAP_Handler *handlers, const char *encoding,
+ const char *stylesheet)
{
static char *err_xml =
"<?xml version=\"1.0\"?>\n"
{
static char *err_xml =
"<?xml version=\"1.0\"?>\n"
@@
-257,11
+259,20
@@
int z_soap_codec_enc(ODR o, Z_SOAP **pp,
return -1;
}
#endif
return -1;
}
#endif
+int z_soap_codec_enc(ODR o, Z_SOAP **pp,
+ char **content_buf, int *content_len,
+ Z_SOAP_Handler *handlers,
+ const char *encoding)
+{
+ return z_soap_codec_enc_xsl(o, pp, content_buf, content_len, handlers,
+ encoding, 0);
+}
+
int z_soap_codec(ODR o, Z_SOAP **pp,
char **content_buf, int *content_len,
Z_SOAP_Handler *handlers)
{
int z_soap_codec(ODR o, Z_SOAP **pp,
char **content_buf, int *content_len,
Z_SOAP_Handler *handlers)
{
- return z_soap_codec_enc(o, pp, content_buf, content_len, handlers, 0, 0);
+ return z_soap_codec_enc(o, pp, content_buf, content_len, handlers, 0);
}
int z_soap_error(ODR o, Z_SOAP *p,
}
int z_soap_error(ODR o, Z_SOAP *p,