--- gforth/Attic/primitives 1994/07/07 14:59:24 1.10 +++ gforth/Attic/primitives 1994/07/08 15:00:59 1.11 @@ -710,11 +710,16 @@ wior = FILEIO(u20) && (c_addr[u2-1]==NEWLINE)); +if ((flag=FLAG(!feof((FILE *)wfileid)))) { + char *s = fgets(c_addr,u1+1,(FILE *)wfileid); + wior=FILEIO(ferror((FILE *)wfileid)); + u2=strlen(c_addr); + u2-=((u2>0) && (c_addr[u2-1]==NEWLINE)); +} +else { + wior=0; + u2=0; +} write-file c_addr u1 wfileid -- wior file write_file /* !! fwrite does not guarantee enough */