This is the mail archive of the
cygwin-apps@cygwin.com
mailing list for the Cygwin project.
Re: [PATCH] Uninstall .dll last, reinstall first - final version
- From: "Max Bowsher" <maxb at ukf dot net>
- To: "Dave Korn" <dave dot korn at artimi dot com>,<cygwin-apps at cygwin dot com>
- Date: Tue, 3 May 2005 19:54:55 +0100
- Subject: Re: [PATCH] Uninstall .dll last, reinstall first - final version
- References: <SERRANOY7xOSHqYVqWm00000054@SERRANO.CAM.ARTIMI.COM>
Dave Korn wrote:
Well, it builds, and it works, and I've tested it by rolling an
installation back-and-forth across quite a large update (the difference
between my local mirror set up last september and an up-to-date mirror),
which I could do with the old setup and see things fail when it removed
the
cygwin dll early in the uninstall, and which worked fine with the patched
version because it saves the dll until last, and nobody actually has any
comments, but I've cut out the unnecessary
return-an-early-abort-indication
bit now that I'm convinced that LogSingleton::exit doesn't return. So I'd
call that done for now. Here ya go!
The problem with this is it special cases the "cygwin" package. Whilst
undoubtably this is the one thing that almost everything depends on, there
are other dependency issues which this does not touch.
It is definitely valuable to have the section of code causing the problem
pinpointed, but I think what we should do instead is to break out the
uninstallation phase into two seperate passes:
1. Run preremove scripts
2. Actually remove files.
This is still not perfect, but should resolve the majority of issues, and
not just relating to the cygwin package itself.
Max.