X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Flibxml2_error.c;h=d7abcf84ec13551209ddeb39bc1a759c79d5068f;hb=3489c6eaceb7ab7f4e8298a2f898dda0c3d0a09c;hp=00f588140000fe06eae75f6d89f6b71eed22f144;hpb=fc6d778b923000b5c6ad8e108b0b184178a9d33f;p=yaz-moved-to-github.git diff --git a/src/libxml2_error.c b/src/libxml2_error.c index 00f5881..d7abcf8 100644 --- a/src/libxml2_error.c +++ b/src/libxml2_error.c @@ -1,8 +1,6 @@ -/* - * Copyright (C) 2006, Index Data ApS +/* This file is part of the YAZ toolkit. + * Copyright (C) 1995-2008 Index Data * See the file LICENSE for details. - * - * $Id: libxml2_error.c,v 1.2 2006-07-06 10:17:53 adam Exp $ */ /** * \file libxml2_error.c @@ -12,6 +10,7 @@ #include #include #include +#include #include #if YAZ_HAVE_XML2 @@ -24,6 +23,7 @@ static int libxml2_error_level = 0; +#if YAZ_HAVE_XML2 static void proxy_xml_error_handler(void *ctx, const char *fmt, ...) { char buf[1024]; @@ -31,24 +31,21 @@ static void proxy_xml_error_handler(void *ctx, const char *fmt, ...) va_list ap; va_start(ap, fmt); -#ifdef WIN32 - vsprintf(buf, fmt, ap); -#else - vsnprintf(buf, sizeof(buf), fmt, ap); -#endif + yaz_vsnprintf(buf, sizeof(buf)-1, fmt, ap); yaz_log(libxml2_error_level, "%s: %s", (char*) ctx, buf); va_end (ap); } +#endif int libxml2_error_to_yazlog(int level, const char *lead_msg) { libxml2_error_level = level; +#if YAZ_HAVE_XML2 + xmlSetGenericErrorFunc((void *) "XML", proxy_xml_error_handler); #if YAZ_HAVE_XSLT xsltSetGenericErrorFunc((void *) "XSLT", proxy_xml_error_handler); #endif -#if YAZ_HAVE_XML2 - xmlSetGenericErrorFunc((void *) "XML", proxy_xml_error_handler); return 0; #else return -1;