X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=recctrl%2Fsafari.c;fp=recctrl%2Fsafari.c;h=25d445b3d0e2c88bcc9875eb0b419dfb07463674;hb=cae6de97d03369a9429024f9d4abc9f1e5fbf3bb;hp=f22ef345305690692f2509a5ef89f591f4d6e477;hpb=ab1e3781d08bd0fca3e682b1a885177f07ad849a;p=idzebra-moved-to-github.git diff --git a/recctrl/safari.c b/recctrl/safari.c index f22ef34..25d445b 100644 --- a/recctrl/safari.c +++ b/recctrl/safari.c @@ -1,4 +1,4 @@ -/* $Id: safari.c,v 1.8 2005-06-23 06:45:47 adam Exp $ +/* $Id: safari.c,v 1.9 2005-06-28 12:18:32 adam Exp $ Copyright (C) 1995-2005 Index Data ApS @@ -86,13 +86,16 @@ static int fi_getchar(struct fi_info *fi, char *dst) static int fi_gets(struct fi_info *fi, char *dst, int max) { - int l; - for (l = 0; l < max; l++) + int l = 0; + while(1) { - if (!fi_getchar(fi, dst+l)) + char dstbyte; + if (!fi_getchar(fi, &dstbyte)) return 0; - if (dst[l] == '\n') + if (dstbyte == '\n') break; + if (l < max) + dst[l++] = dstbyte; } dst[l] = '\0'; return 1;