--- bincimap-1.0.24-dist/src/io/io.h	2003-02-21 12:01:10.000000000 -0800
+++ bincimap-1.0.24/src/io/io.h	2003-03-01 02:00:59.000000000 -0800
@@ -235,6 +235,7 @@
     //--
     inline int readChar(void)
     {
+      int nextChar;
       char c;
       
       if (inputBuffer.size() != 0) {
@@ -247,9 +248,10 @@
 	return c;
       }
 
-      if (mode == IO::MODE_PLAIN)
-	c = fgetc(stdin);
-      else if (mode == IO::MODE_SSL) {
+      if (mode == IO::MODE_PLAIN) {
+        nextChar = fgetc(stdin);
+	c = nextChar;
+      } else if (mode == IO::MODE_SSL) {
 	do {
 	  int retval = SSL_read(ssl, &c, 1);
 
@@ -269,8 +271,8 @@
 	} while (1);
       }
 
-      if (c == EOF)
-	throw InputException("readChar");
+      if (nextChar == EOF)
+	throw InputException("readChar EOF");
       else {
 	if (c == '\n')
 	  charnr = 0;
