[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
TOPS-20 file-server bug alert
- To: slug@utexas-20, hoss@symbolics
- Subject: TOPS-20 file-server bug alert
- From: Ken Olum <KDO@SRI-KL>
- Date: Wed, 9 Apr 86 14:49 PST
If you run the TOPS-20 chaosnet qfile-server, then you probably have a bug
which can randomly cause files not to get listed in directory listings. The
problem is that the file-server is filling up a packet with directory-listings,
and when it gets to a file that doesn't fit it backs out of listing the file in
this packet and waits to put it in the next one. However if it is the final
CRLF after the file-properties that doesn't fit, then it thinks it is already
done with the file and never lists it.
Look in FILE.MID and see if you have the following code:
----------------------------------------
;; Done with this file, output blank line
DIRFLE: MOVE 1,DATJFN(IDX)
GNJFN
SETZM DATJFN(IDX)
DIRFE1: PUSHJ P,DIRCLF
AOS DATNDR(IDX)
POPJ1: AOS (P) ;Skip return for full file
POPJ P,
----------------------------------------
If so, you should change it to read:
----------------------------------------
DIRFLE: PUSHJ P,DIRCLF ;Send the CRLF FIRST, THEN do the GNJFN. Otherwise files get lost.
MOVE 1,DATJFN(IDX)
GNJFN
SETZM DATJFN(IDX)
SKIPA ;Skip CRLF here since we did it above. DIRFE1 still needed as entry point
DIRFE1: PUSHJ P,DIRCLF
AOS DATNDR(IDX)
POPJ1: AOS (P) ;Skip return for full file
POPJ P,
----------------------------------------
-- Ken