From 24483d4ace499b46ae33f06594d2d1f75f422f44 Mon Sep 17 00:00:00 2001 From: Adam Dickmeiss Date: Fri, 27 Oct 2006 12:19:15 +0000 Subject: [PATCH] Fixed bug #711: Do not include Libxml2's headers from nmem.h. --- include/yaz/Makefile.am | 4 ++-- include/yaz/nmem.h | 11 +-------- include/yaz/nmem_xml.h | 57 +++++++++++++++++++++++++++++++++++++++++++++++ src/marcdisp.c | 3 ++- src/xmlquery.c | 3 ++- 5 files changed, 64 insertions(+), 14 deletions(-) create mode 100644 include/yaz/nmem_xml.h diff --git a/include/yaz/Makefile.am b/include/yaz/Makefile.am index 14ef421..50924b0 100644 --- a/include/yaz/Makefile.am +++ b/include/yaz/Makefile.am @@ -1,9 +1,9 @@ -## $Id: Makefile.am,v 1.33 2006-10-27 11:22:08 adam Exp $ +## $Id: Makefile.am,v 1.34 2006-10-27 12:19:15 adam Exp $ pkginclude_HEADERS= backend.h ccl.h cql.h comstack.h \ diagbib1.h diagsrw.h diagsru_update.h sortspec.h log.h logrpn.h marcdisp.h \ nfa.h nfaxml.h \ - nmem.h odr.h \ + nmem.h nmem_xml.h odr.h \ oid.h options.h otherinfo.h pquery.h prt-ext.h querytowrbuf.h \ readconf.h record_conv.h retrieval.h statserv.h \ tcpip.h test.h unix.h tpath.h wrbuf.h xmalloc.h \ diff --git a/include/yaz/nmem.h b/include/yaz/nmem.h index 2666fe7..fb28913 100644 --- a/include/yaz/nmem.h +++ b/include/yaz/nmem.h @@ -24,7 +24,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/* $Id: nmem.h,v 1.22 2006-10-09 21:02:41 adam Exp $ */ +/* $Id: nmem.h,v 1.23 2006-10-27 12:19:15 adam Exp $ */ /** * \file nmem.h @@ -39,10 +39,6 @@ #include #include -#if YAZ_HAVE_XML2 -#include -#endif - #define NMEM_DEBUG 0 #ifndef NMEM_DEBUG @@ -97,11 +93,6 @@ YAZ_EXPORT void nmem_strsplit(NMEM nmem, const char *delim, YAZ_EXPORT void nmem_strsplit_blank(NMEM nmem, const char *dstr, char ***darray, int *num); -#if YAZ_HAVE_XML2 -/** \brief copies TEXT Libxml2 node data to NMEM */ -YAZ_EXPORT char *nmem_text_node_cdata(const xmlNode *ptr, NMEM nmem); -#endif - /** \brief creates and allocates integer for NMEM */ YAZ_EXPORT int *nmem_intdup (NMEM mem, int v); diff --git a/include/yaz/nmem_xml.h b/include/yaz/nmem_xml.h new file mode 100644 index 0000000..4b5bf74 --- /dev/null +++ b/include/yaz/nmem_xml.h @@ -0,0 +1,57 @@ +/* + * Copyright (c) 1995-2006, Index Data + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Index Data nor the names of its contributors + * may be used to endorse or promote products derived from this + * software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* $Id: nmem_xml.h,v 1.1 2006-10-27 12:19:15 adam Exp $ */ + +/** + * \file nmem_xml.h + * \brief Header for Nibble Memory functions + Libxml2 specific stuff + */ +#ifndef NMEM_XML_H +#define NMEM_XML_H + +#include + +#if YAZ_HAVE_XML2 +#include + +YAZ_BEGIN_CDECL + +/** \brief copies TEXT Libxml2 node data to NMEM */ +YAZ_EXPORT char *nmem_text_node_cdata(const xmlNode *ptr, NMEM nmem); + +YAZ_END_CDECL + +#endif +#endif +/* + * Local variables: + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + * vim: shiftwidth=4 tabstop=8 expandtab + */ + diff --git a/src/marcdisp.c b/src/marcdisp.c index e5fd62e..970eed7 100644 --- a/src/marcdisp.c +++ b/src/marcdisp.c @@ -2,7 +2,7 @@ * Copyright (C) 1995-2006, Index Data ApS * See the file LICENSE for details. * - * $Id: marcdisp.c,v 1.34 2006-08-28 14:18:22 adam Exp $ + * $Id: marcdisp.c,v 1.35 2006-10-27 12:19:15 adam Exp $ */ /** @@ -25,6 +25,7 @@ #include #include #include +#include #if YAZ_HAVE_XML2 #include diff --git a/src/xmlquery.c b/src/xmlquery.c index 62ebd7f..d6df3b4 100644 --- a/src/xmlquery.c +++ b/src/xmlquery.c @@ -2,7 +2,7 @@ * Copyright (C) 1995-2006, Index Data ApS * All rights reserved. * - * $Id: xmlquery.c,v 1.10 2006-07-06 10:17:54 adam Exp $ + * $Id: xmlquery.c,v 1.11 2006-10-27 12:19:15 adam Exp $ */ /** \file xmlquery.c @@ -19,6 +19,7 @@ #include #include +#include void yaz_query2xml_attribute_element(const Z_AttributeElement *element, xmlNodePtr parent) -- 1.7.10.4