diff --git a/lib/modules/Stdio.pmod b/lib/modules/Stdio.pmod index 7efb3f95911cf25938ac7c1fb57ca2dab7938200..5499910414920d028d6656ae9b289a470aa39873 100644 --- a/lib/modules/Stdio.pmod +++ b/lib/modules/Stdio.pmod @@ -42,10 +42,10 @@ class FILE { /* Public functions. */ string gets() { - int p,tmp=bpos; - while((p=search(b, "\n", tmp)) == -1) + int p,tmp=0; + while((p=search(b, "\n", bpos+tmp)) == -1) { - tmp=strlen(b); + tmp=strlen(b)-bpos; if(!get_data()) return 0; } return extract(p-bpos, 1);