X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=util%2Fyaziconv.c;h=72dd075dcae267374c2d14e72cc5169ad3b8a143;hb=f3c256e67f73eee9cace104051db51bfd13166b4;hp=a755a7d85818f6ae4eeb7c4a13c000804bc3df2a;hpb=d57ade59211707b9bcfacc61039e446c9fa3f36f;p=yaz-moved-to-github.git diff --git a/util/yaziconv.c b/util/yaziconv.c index a755a7d..72dd075 100644 --- a/util/yaziconv.c +++ b/util/yaziconv.c @@ -1,8 +1,8 @@ /* - * Copyright (C) 1995-2005, Index Data ApS + * Copyright (C) 1995-2007, Index Data ApS * See the file LICENSE for details. * - * $Id: yaziconv.c,v 1.5 2006-04-21 10:28:07 adam Exp $ + * $Id: yaziconv.c,v 1.9 2007-05-25 16:19:46 marc Exp $ */ #if HAVE_CONFIG_H @@ -44,6 +44,11 @@ void convert (FILE *inf, yaz_iconv_t cd, int verbose) { if (outbuf != outbuf0) fwrite (outbuf0, 1, outbuf - outbuf0, stdout); + outbuf = outbuf0; + outbytesleft = CHUNK_OUT; + r = yaz_iconv (cd, 0, 0, &outbuf, &outbytesleft); + if (outbuf != outbuf0) + fwrite (outbuf0, 1, outbuf - outbuf0, stdout); break; } inbytesleft = r; @@ -81,7 +86,7 @@ void convert (FILE *inf, yaz_iconv_t cd, int verbose) } if (r == 0) { - fprintf (stderr, "invalid sequence\n"); + fprintf (stderr, "invalid sequence due to missing input\n"); return ; } inbytesleft += r; @@ -148,7 +153,7 @@ int main (int argc, char **argv) break; default: fprintf (stderr, "yaziconv: Usage\n" - "siconv -f encoding -t encoding [-v] [file]\n"); + "yaziconv -f encoding -t encoding [-v] [file]\n"); exit(1); } }