-/*
- * Copyright (C) 1995-2005, Index Data ApS
+/* This file is part of the YAZ toolkit.
+ * Copyright (C) 1995-2011 Index Data
* See the file LICENSE for details.
- *
- * $Id: yaz-xmlquery.c,v 1.3 2006-07-06 10:17:55 adam Exp $
*/
+#if HAVE_CONFIG_H
+#include <config.h>
+#endif
#include <stdlib.h>
#include <stdio.h>
}
else
{
- char *buf_out = 0;
+ xmlChar *buf_out = 0;
int len_out = 0;
- xmlDocDumpMemory(doc, (xmlChar **) &buf_out, &len_out);
+ xmlDocDumpMemory(doc, &buf_out, &len_out);
if (!len_out || !buf_out)
{
exit(4);
}
else
- fwrite(buf_out, len_out, 1, stdout);
+ {
+ if (fwrite(buf_out, len_out, 1, stdout) != 1)
+ {
+ fprintf(stderr, "%s: write failed\n", prog);
+ exit(5);
+ }
+ }
xmlFreeDoc(doc);
}
}
{
WRBUF w = wrbuf_alloc();
yaz_query_to_wrbuf(w, query);
- printf("%s\n", wrbuf_buf(w));
- wrbuf_free(w, 1);
+ printf("%s\n", wrbuf_cstr(w));
+ wrbuf_destroy(w);
}
odr_destroy(odr);
xmlFreeDoc(doc);
exit(1);
}
rewind(f);
- xmlstr = xmalloc(sz+1);
+ xmlstr = (char *) xmalloc(sz+1);
xmlstr[sz] = '\0';
- fread(xmlstr, sz, 1, f);
- fclose(f);
+ if (fread(xmlstr, sz, 1, f) != 1)
+ {
+ fprintf(stderr, "%s: read failed for file %s\n", prog, xmlfile);
+ exit(1);
+ }
+ if (fclose(f))
+ {
+ fprintf(stderr, "%s: close failed for file %s\n", prog, xmlfile);
+ exit(1);
+ }
xmlquerytopqf(xmlstr);
xfree(xmlstr);
}
#endif
-void usage()
+void usage(void)
{
fprintf(stderr, "%s [-p pqf] [-x xmlfile]\n", prog);
fprintf(stderr, " -p pqf reads pqf. write xml to stdout\n");