--- inp_str.c.old Tue Jan 2 18:53:42 2001 +++ inp_str.c Wed Jul 3 10:57:33 2002 @@ -64,6 +64,7 @@ c = getc (stream); } ungetc (c, stream); + nread--; if (str_size >= alloc_size) { @@ -74,9 +75,10 @@ str[str_size] = 0; retval = mpf_set_str (rop, str, base); + (*__gmp_free_func) (str, alloc_size); + if (retval == -1) return 0; /* error */ - (*__gmp_free_func) (str, alloc_size); return str_size + nread; }