Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!uunet!cbmvax!jesup From: jesup@cbmvax.commodore.com (Randell Jesup) Newsgroups: comp.sys.amiga.tech Subject: Re: Directories Message-ID: <13044@cbmvax.commodore.com> Date: 5 Jul 90 04:49:37 GMT References: <3541@monu1.cc.monash.oz> Reply-To: jesup@cbmvax (Randell Jesup) Organization: Commodore, West Chester, PA Lines: 26 In article <3541@monu1.cc.monash.oz> ins778u@vax4.cc.monash.edu.au (mr c.r. hames) writes: > > I haven't seen a warning about the following situation so is this a bug >and if so is it fixed with 2.0. > >Ok Kick 1.3 you Lock(),Examine(),CheckifDirectory,start getting directory:- > ExNext() > Delete the file you just got with ExNext using DeleteFile() > ExNext() - Now this gives you garbage from now on unless you Examine() > the directory your getting again. > >Could someone at commodore tell me what other things will confuse ExNext()? It is a danger. Doing this to the ram-handler will cause a quick crash. With floppies/HD's, it doesn't happen as easily, but other problems can happen. For example, the file could be deleted, and another created using the same disk block. If this happened, you could end up "skipping" to another directory (very bad on a delete #?....) 2.0 is more resistant to this (I think it stops with an error in most cases). This is one of the prime reasons we created ExAll. -- Randell Jesup, Keeper of AmigaDos, Commodore Engineering. {uunet|rutgers}!cbmvax!jesup, jesup@cbmvax.cbm.commodore.com BIX: rjesup Common phrase heard at Amiga Devcon '89: "It's in there!"