--- sfwrite.c 2000/09/20 21:07:26 1.1 +++ sfwrite.c 2000/09/20 21:08:44 1.2 @@ -100,6 +100,8 @@ else { if(w > (ssize_t)n) w = (ssize_t)n; + if(w <= 0) /* no forward progress possible */ + break; memcpy(f->next, s, w); f->next += w; }