On Sun, Dec 02, 2001 at 03:36:04AM -0500, Glenn Maynard wrote: > (bugfixes) > > FileSetOutput.cc: don't add a type suffix to cls output if we don't know the type. > > GetFileInfo.cc: Propagate use_cache to child ListInfos; fixes recls. > Don't EACCESS if we don't know the file type.
> (arguably a bugfix, but see below) > ftpclass.cc: Quiet error message of closed connection if it's an aborted > connection and we aren't using use-abor. These ones applied. > (non-fixes) > > FileAccess.cc, FileAccess.h: add a simple list parser interface. > > FileInfo.cc, FileInfo.h: make parsing a ListParser. > > FtpSplitList.cc, FtpSplitList.h, FileInfo.cc: Made FtpSplitList return a > char **, not a FileSet. Putting lines from a long list into a FileSet > doesn't really make sense. Globbing with FtpSplitList (via its Glob > parent) wouldn't have worked, since it would glob the whole long line > (and other glob functions wouldn't work in similar ways); it's now a > simple FileAccessOperation. > > FtpListInfo.cc, FtpListInfo.h: Merge GETTING_LONG_LIST and > GETTING_SHORT_LIST; they're identical now. > > FileAccess.cc, FileAccess.h, ftpclass.cc, ftpclass.h: Added > MakeListParser. This is probably extensible to the other protocols, but > I havn't looked at any of them. > > LsCache.cc, LsCache.h: let Find() ignore mode. Add IsDirectory(). > > misc.cc, misc.h: add split_toks. I'll think about this some more. Maybe it should be done differently. E.g. it can be done as virtual function of FileAccess class and work on Buffer, possibly incomplete - e.g. this is how my html parser works. I'll take care of FtpListInfo myself and remove FtpSplitList completely. > ParseFtpLongList_OS2 and ParseFtpLongList_MacWebStar never seem to > instantiate fi. Didn't touch it, though. Fixed, thanks. > Glitch: cls is stalling somewhere. I havn't yet figured out where. It seems > to happen during the CD test of GetFileInfo. It doesn't happen when the cls > causes a connection to open. It seems to lag *before* sending the CWD command, > but after the Chdir() call. Maybe it forgets to return MOVED in some cases when it did something. -- Alexander. | http://www.yars.free.net/~lav/