delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2006/12/25/09:13:06

X-Spam-Check-By: sourceware.org
Message-ID: <458FDC4E.9040505@cygwin.com>
Date: Mon, 25 Dec 2006 09:12:30 -0500
From: "Larry Hall (Cygwin)" <reply-to-list-only-lh AT cygwin DOT com>
Reply-To: cygwin AT cygwin DOT com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.8) Gecko/20061108 Fedora/1.5.0.8-1.fc4.remi Thunderbird/1.5.0.8 Mnenhy/0.7.4.0
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: Updated cygwin dlls don't have the .dll extension; instead have .dll.new
References: <458EE598 DOT 3010404 AT aim DOT com> <458F31B1 DOT 6050804 AT byu DOT net> <458F81CC DOT 3090500 AT tlinx DOT org>
In-Reply-To: <458F81CC.3090500@tlinx.org>
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Linda Walsh wrote:
> Eric Blake wrote:
>> According to Charli Li on 12/24/2006 1:39 PM:
>>  
>>>  Fishy enough, the new dlls had a filename extension of .dll.new
>>>     
>> Which means Windows is scheduled to rename it automatically at the next
>> reboot, since it was in use at the time you ran setup.exe.  Didn't you
>> read the message box that setup told you to reboot?
>>  
>>> Bottom line: Is this a problem with setup.exe?  CCing to cygwin-apps as
>>> well.
>>>     
>> No, this is not a setup bug, but a Windows limitation
> ---
>    It has a name extension of .new because that's what cygwin sets it to.
> Cygwin has a limitation that doesn't need to exist.
> Cygwin could rename the old file to file.dll.old, (or if it isn't 
> cross-deviced linked,
> to "/tmp/file.dll.todelete.001") and move the new file into "file.dll".  
> It's an established
> behavior of NT.
> Perl had same problem when installing new perl libraries under Windows.  
> They moved
> to the NT supported method of renaming the old and putting in the new.  
> Then you still
> setup the file delete after reboot -- but meanwhile, users can use the 
> new library,
> and programs that have the existing file open continue to operate "fine" 
> until they
> exit -- then it's the old files that get left around until the next reboot.


What the file is named is insignificant.  When the file is already in use,
you will run into the situation where the newly installed file is not moved
into place for use immediately . Renaming the old file to something else
won't help this situation, since the original is still in use.  Before the
new one can affectively be used, all references to the old one must be
terminated.  The new one can then be safely moved into place.  The general
limitation of not being able to replace an in-use DLL with a new one is a
Windows limitation, not a Cygwin one.  The situation is generally handled
by rebooting.  It's a common Windows paradigm. :-(


-- 
Larry Hall                              http://www.rfk.com
RFK Partners, Inc.                      (508) 893-9779 - RFK Office
216 Dalton Rd.                          (508) 893-9889 - FAX
Holliston, MA 01746

_____________________________________________________________________

A: Yes.
 > Q: Are you sure?
 >> A: Because it reverses the logical flow of conversation.
 >>> Q: Why is top posting annoying in email?

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019