MOO-cows Mailing List Archive


re: FUP ate my db

>At 02:40 PM 5/25/96 PDT, wrote:
>>I'd just like to point out a `small' bug in FUP... if you try and fileread()
>>a directory, it just keeps reading, and reading, and reading, and locks the 
>>server up, and eventually runs out of memory and the server panics and dumps 

This might be obvious, but why the hell would someone try to read a directory? :)

>yeah I know, it also locks up if you try to read/write a file with ; or : in
>it... you could make a wrapper in $bf_fileread() (and all the other ones
>too) to check for that.

The above statement is bogus:

;filewrite("temp", "semicolontest", {"this is a line of text;", "this line ends in a colon:"})
=> 1
[used 6 ticks, 0 seconds.]
;fileread("temp", "semicolontest")
=> {"this is a line of text;", "this line ends in a colon:"}
[used 5 ticks, 0 seconds.]

And, of course, I checked the FILENAMES also, and it is true, FUP strips certain characters
from FILENAMES, which makes sense.  It does this so you don't end up with a file that idiots
will have problems with when trying to manlipulate from the shell.  In UNIX, ; is special,
and you'd have to escape it.  Thusly, we'd be reading messages like "I wrote out a file with
FUP with a semicolon in it, and I can't delete it from the UNIX prompt".  Colons are special
on Macs.  There are a whole bunch of characters that are removed.
Altho, perhaps it should raise E_INVARG or something.

>...just did some checks. FUP appears to strip out : and ; most of the time. 
>Sometimes I get Invalid Indirection (FUP says Error 0). What does this mean, 

Most of the time?  It strips the special chars all the time for me when the special
characters appear in the FILENAMES.  I can not reproduce this.  I can not get FUP to
raise E_INVIND.


Home | Subject Index | Thread Index