projects
/
pazpar2-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Only fire one non-timeout event for Z39.50/SRU clients
[pazpar2-moved-to-github.git]
/
src
/
pazpar2_config.c
diff --git
a/src/pazpar2_config.c
b/src/pazpar2_config.c
index
49a73d7
..
167424d
100644
(file)
--- a/
src/pazpar2_config.c
+++ b/
src/pazpar2_config.c
@@
-150,9
+150,7
@@
struct conf_service *service_init(struct conf_server *server,
service->sortkeys
= nmem_malloc(nmem,
sizeof(struct conf_sortkey) * service->num_sortkeys);
service->sortkeys
= nmem_malloc(nmem,
sizeof(struct conf_sortkey) * service->num_sortkeys);
-
service->xml_node = 0;
service->xml_node = 0;
-
return service;
}
return service;
}
@@
-273,8
+271,6
@@
void service_destroy(struct conf_service *service)
if (!pazpar2_decref(&service->ref_count, service->mutex))
{
service_xslt_destroy(service);
if (!pazpar2_decref(&service->ref_count, service->mutex))
{
service_xslt_destroy(service);
- if (service->xml_node)
- xmlFreeNode(service->xml_node);
pp2_charset_fact_destroy(service->charsets);
ccl_qual_rm(&service->ccl_bibset);
yaz_mutex_destroy(&service->mutex);
pp2_charset_fact_destroy(service->charsets);
ccl_qual_rm(&service->ccl_bibset);
yaz_mutex_destroy(&service->mutex);
@@
-746,7
+742,14
@@
static struct conf_service *service_create_static(struct conf_server *server,
}
}
}
}
}
}
- service->xml_node = xmlCopyNode(node, 1);
+
+ {
+ xmlBufferPtr buf = xmlBufferCreate();
+ xmlNodeDump(buf, node->doc, node, 0, 0);
+ service->xml_node =
+ nmem_strdupn(service->nmem, (const char *) buf->content, buf->use);
+ xmlBufferFree(buf);
+ }
return service;
}
return service;
}