From 8b782f377eff7672249d66423d3ca792574931e2 Mon Sep 17 00:00:00 2001 From: Jonathan McDowell Date: Mon, 31 May 2004 23:47:53 +0000 Subject: [PATCH] cscvs to tla changeset 93 Author: noodles Date: 2003/09/28 20:33:34 Fix stupid bug where we always read at least one byte from stdin, even if we wanted none. --- onak.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/onak.c b/onak.c index bba213b..903c8f0 100644 --- a/onak.c +++ b/onak.c @@ -7,7 +7,7 @@ * * Copyright 2002 Project Purple * - * $Id: onak.c,v 1.14 2003/06/07 13:37:33 noodles Exp $ + * $Id: onak.c,v 1.15 2003/09/28 20:33:34 noodles Exp $ */ #include @@ -28,13 +28,15 @@ int stdin_getchar(void *ctx, size_t count, unsigned char *c) { - int ic; + int ic = 0; - do { + while ((count > 0) && (ic != EOF)) { ic = getchar(); *c = ic; c++; - } while ((ic != EOF) && (--count > 0)); + count--; + } + return (ic == EOF); } -- 2.30.2