X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=util%2Fyaz-record-conv.c;h=fed037f0034e6286e032ca2f934cc54e5975875d;hp=4f943b6f6ad941ae3b6c0bf388c188fbb03da770;hb=323805b6779bcf1befdc7cdd7f10c23b06885e0d;hpb=0bd27325c14ad88221c6909231682f0cf1e777fa diff --git a/util/yaz-record-conv.c b/util/yaz-record-conv.c index 4f943b6..fed037f 100644 --- a/util/yaz-record-conv.c +++ b/util/yaz-record-conv.c @@ -1,5 +1,5 @@ /* This file is part of the YAZ toolkit. - * Copyright (C) 1995-2010 Index Data + * Copyright (C) Index Data * See the file LICENSE for details. */ @@ -7,8 +7,10 @@ #include #endif +#include #include #include +#include const char *prog = "yaz-record-conv"; @@ -23,6 +25,8 @@ int main (int argc, char **argv) char *arg; yaz_record_conv_t p = 0; int no_errors = 0; + + yaz_enable_panic_backtrace(*argv); while ((r = options("V", argv, argc, &arg)) != -2) { switch (r) @@ -30,6 +34,7 @@ int main (int argc, char **argv) case 'V': break; case 0: +#if YAZ_HAVE_XML2 if (!p) { xmlDocPtr doc = xmlParseFile(arg); @@ -70,15 +75,15 @@ int main (int argc, char **argv) } while ((c = getc(f)) != EOF) wrbuf_putc(input_record, c); - - r = yaz_record_conv_record(p, + + r = yaz_record_conv_record(p, wrbuf_buf(input_record), wrbuf_len(input_record), output_record); if (r) { fprintf(stderr, "%s: %s: Error %s\n", - prog, arg, + prog, arg, yaz_record_conv_get_error(p)); no_errors++; } @@ -92,11 +97,19 @@ int main (int argc, char **argv) fclose(f); } break; +#else + fprintf(stderr, "%s: YAZ not compiled with Libxml2 support\n", + prog); + usage(); + break; +#endif default: usage(); } - } + } +#if YAZ_HAVE_XML2 yaz_record_conv_destroy(p); +#endif if (no_errors) exit(1); exit(0);