This sounds good, just also check what happens if FindClose receives an invalid handle.
Leonardo M. Ramé http://leonardorame.blogspot.com --- On Mon, 5/18/09, Michael Van Canneyt <mich...@freepascal.org> wrote: > From: Michael Van Canneyt <mich...@freepascal.org> > Subject: Re: [fpc-pascal] FindFirst...FindClose > To: "FPC-Pascal users discussions" <fpc-pascal@lists.freepascal.org> > Date: Monday, May 18, 2009, 4:03 PM > > > On Mon, 18 May 2009, Marco van de Voort wrote: > > > In our previous episode, Jonas Maebe said: > >>>> > >>>> Yes. > >>> > >>> Huh ? Since when is this requirement ? > >> > >> Since as long as I can remember. It at least > predates the switch to > >> svn (revision 1 of both rtl/unix/dos.pp and of > rtl/unix/sysutils.pp > >> requires it). > > > > The current situation is probably simply the old > "linux" unit routines > > folded into sysutils. The fact that it is documented > that way probably makes > > it more than likely it was no mistake. > > Given that I documented it, I'd rather say that I was > sloppy in the > formulation. I've always assumed that the findclose was > only needed > in case of a _succesful_ findfirst, i.e. one that returns > 0. > And I've seen a lot of code that assumes the same > (admittedly, it was > Win32 code). > > Once more, if this is so, there is a lot of code that needs > to be > checked in FPC. It might be easier to "fix" findfirst so > that in case > of an error (nonzero return value), the searchrec record is > cleared, > and the findclose() call is redundant. > > I checked the windows code, and FindClose explicitly checks > that > the searchrec record contains a valid handle (i.e. NOT > INVALID_HANDLE_VALUE), so all platforms would behave the > same. > > Opinions ? If no-one objects, I'll implement the 'fix', > it's only > 2 lines of code. > > Michael. > _______________________________________________ > fpc-pascal maillist - fpc-pascal@lists.freepascal.org > http://lists.freepascal.org/mailman/listinfo/fpc-pascal > _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal