Version 3.0.49. Update news.
[yaz-moved-to-github.git] / src / libxml2_error.c
index 00f5881..fe1f978 100644 (file)
@@ -1,8 +1,6 @@
-/*
- * Copyright (C) 2006, Index Data ApS
+/* This file is part of the YAZ toolkit.
+ * Copyright (C) 1995-2009 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 <stdlib.h>
 #include <stdarg.h>
 #include <yaz/log.h>
+#include <yaz/snprintf.h>
 #include <yaz/libxml2_error.h>
 
 #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;
@@ -58,6 +55,7 @@ int libxml2_error_to_yazlog(int level, const char *lead_msg)
 /*
  * Local variables:
  * c-basic-offset: 4
+ * c-file-style: "Stroustrup"
  * indent-tabs-mode: nil
  * End:
  * vim: shiftwidth=4 tabstop=8 expandtab