Path: utzoo!attcan!uunet!oddjob!uxc!uwmcsd1!mailrus!ames!amdcad!sun!imagen!atari!apratt From: apratt@atari.UUCP (Allan Pratt) Newsgroups: comp.sys.atari.st Subject: Re: Allan: is Fsfirst/Fsnext fixed in the NEW ROMS??? Message-ID: <1129@atari.UUCP> Date: 24 Aug 88 17:54:13 GMT References: <1116@atari.UUCP} <692@auvax.UUCP} <1121@atari.UUCP> <6339@chinet.UUCP> <402@clio.math.lsa.umich.edu> <1125@atari.UUCP> <528@nikhefh.hep.nl> Reply-To: apratt@atari.UUCP (Allan Pratt) Distribution: comp Organization: Atari (US) Corporation, Sunnyvale, California Lines: 27 In article <528@nikhefh.hep.nl> gert@nikhefh.hep.nl (Gert Poletiek) writes: > [...your DTA contains a pointer to an OS data structure and the OS > can't tell when it's no longer necessary...] > > The folder into which the program does its search using Fsfirst becomes > active (its being searched, right?). Now in GemDos there is no backward > referencing pointer, i.e. a pointer from the active folder structure to an > active (not yet completed) DTA search buffer. > > When the program exits, GemDos has no way of knowing whether the active > folder may be removed or not. THIS IS THE REAL REASON FOR THE 40 FOLDER BUG. I forgot to mention: I reworked Fsfirst/Fsnext so they don't leave a pointer to an OS data structure in your DTA. Therefore Fsfirst or Fsnext in a folder does not make it active (except for the duration of the OS call itself). Sorry, Gert, but this is not the reason for the 40-folder bug. You give the guy who wrote GEMDOS too much credit. He NEVER freed directory descriptors back into the pool. He never even TRIED. There was no provision for this AT ALL. He just ASSUMED that you wouldn't have enough folders to fill up the OSPool. And don't get me started on the interactions between Malloc and folders in the old GEMDOS... ============================================ Opinions expressed above do not necessarily -- Allan Pratt, Atari Corp. reflect those of Atari Corp. or anyone else. ...ames!atari!apratt