X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=util%2Fyaziconv.c;h=72dd075dcae267374c2d14e72cc5169ad3b8a143;hb=f3c256e67f73eee9cace104051db51bfd13166b4;hp=35e38e3ea28dbe863f6a681aebbfc91323bac431;hpb=8d691989077a0addcbd840d769dce6700f3d9622;p=yaz-moved-to-github.git diff --git a/util/yaziconv.c b/util/yaziconv.c index 35e38e3..72dd075 100644 --- a/util/yaziconv.c +++ b/util/yaziconv.c @@ -2,7 +2,7 @@ * Copyright (C) 1995-2007, Index Data ApS * See the file LICENSE for details. * - * $Id: yaziconv.c,v 1.6 2007-01-03 08:42:16 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); } }