X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fmarcdisp.c;h=6eeccb3ae10005cf700cd526441f3d559b8166b7;hb=e2ac4b875fbaf0211beae88ef6ccda2f2a4a3e95;hp=02f3d3ed7427b40ce8ea9ff190700a80b505fd69;hpb=60b5f5ba6f34ef79b037eb8af1e2554d9842bb10;p=yaz-moved-to-github.git diff --git a/src/marcdisp.c b/src/marcdisp.c index 02f3d3e..6eeccb3 100644 --- a/src/marcdisp.c +++ b/src/marcdisp.c @@ -2,7 +2,7 @@ * Copyright (C) 1995-2007, Index Data ApS * See the file LICENSE for details. * - * $Id: marcdisp.c,v 1.44 2007-01-18 14:45:05 adam Exp $ + * $Id: marcdisp.c,v 1.47 2007-02-23 10:15:01 adam Exp $ */ /** @@ -26,6 +26,7 @@ #include #include #include +#include #if YAZ_HAVE_XML2 #include @@ -129,20 +130,12 @@ static void marc_iconv_reset(yaz_marc_t mt, WRBUF wr) { if (mt->iconv_cd) { -#if 1 char outbuf[12]; size_t outbytesleft = sizeof(outbuf); char *outp = outbuf; size_t r = yaz_iconv(mt->iconv_cd, 0, 0, &outp, &outbytesleft); if (r != (size_t) (-1)) wrbuf_write(wr, outbuf, outp - outbuf); -#else - int pos = wr->pos; - wrbuf_iconv_puts(wr, mt->iconv_cd, " "); - if (pos != wr->pos) - wr->pos--; - yaz_iconv(mt->iconv_cd, 0, 0, 0, 0); -#endif } } @@ -182,19 +175,9 @@ void yaz_marc_cprintf(yaz_marc_t mt, const char *fmt, ...) { va_list ap; char buf[200]; - va_start(ap, fmt); -#ifdef WIN32 - _vsnprintf(buf, sizeof(buf)-1, fmt, ap); -#else -/* !WIN32 */ -#if HAVE_VSNPRINTF - vsnprintf(buf, sizeof(buf), fmt, ap); -#else - vsprintf(buf, fmt, ap); -#endif -#endif -/* WIN32 */ + va_start(ap, fmt); + yaz_vsnprintf(buf, sizeof(buf)-1, fmt, ap); yaz_marc_add_comment(mt, buf); va_end (ap); } @@ -651,6 +634,7 @@ static int yaz_marc_write_marcxml_ns(yaz_marc_t mt, WRBUF wr, { if (mt->write_using_libxml2) { +#if YAZ_HAVE_XML2 int ret; xmlNode *root_ptr; @@ -670,6 +654,9 @@ static int yaz_marc_write_marcxml_ns(yaz_marc_t mt, WRBUF wr, xmlFreeDoc(doc); } return ret; +#else + return -1; +#endif } else return yaz_marc_write_marcxml_ns1(mt, wr, ns, format, type);