This is the mail archive of the
mailing list for the Cygwin project.
- From: "Gary R. Van Sickle" <g dot r dot vansickle at worldnet dot att dot net>
- To: "Cygwin Apps" <cygwin-apps at cygwin dot com>
- Date: Fri, 18 Jul 2003 21:13:19 -0500
- Subject: RE: SetupXP
> On Sat, 2003-07-19 at 11:32, Gary R. Van Sickle wrote:
> > > Wait! The status quo must remain, until we have confirmed evidence that
> > > static destructors do always run on exit from -mno-cygwin programs.
> > As Rob said, he's said that too. What am I missing? Neither of
> LogFile's nor
> > LogSingleton's destructors do anything, and this change doesn't remove the
> > "theLog->exit (0);" at the end of main() (the only place its'
> called with 0),
> > so... where's the connection?
> Well, there are two things.
> We used to call ExitProcess(), which (obviously) didn't call
> Secondly, the destructors do nothing because they where not (and we
> haven't tested conclusively if they are nnow) called when ::exit() is
> invoked. The functionality in LogFile::exit() for flushing the log file
> on exit is appropriate to be put in the destructor - flush on cygwin
> exit. We can't put that there until we are sure destructors execute.
> The goal long term is to be able to exit() without worrying about the
> log (or any other related caching logic).
> Does that clear up the connection?
Not really, because my change isn't doing anything whatsoever to the file flush
logic. LogFile::exit() still gets called everywhere it did before.
Gary R. Van Sickle