delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2010/04/07/10:20:22

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=BAYES_00
X-Spam-Check-By: sourceware.org
Message-ID: <4BBC9473.50604@bopp.net>
Date: Wed, 07 Apr 2010 09:19:31 -0500
From: Jeremy Bopp <jeremy AT bopp DOT net>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: git stopped working with 1.7.1
References: <10711 DOT 1261594527 AT gemini DOT franz DOT com> <27300928 DOT post AT talk DOT nabble DOT com> <4B5D7DDF DOT 6070904 AT gmx DOT de> <6ee4c8381002121948x2a0a48fci7918eae743cc03c8 AT mail DOT gmail DOT com> <26824 DOT 1268333412 AT gemini DOT franz DOT com> <28163005 DOT post AT talk DOT nabble DOT com>
In-Reply-To: <28163005.post@talk.nabble.com>
X-IsSubscribed: yes
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

On 4/7/2010 5:12 AM, nothize wrote:
> After I've replaced(or removed!) %windir%\system32\cygz.dll with the newer
> one in Cygwin, git 1.7.0.4 worked well. Perhaps I've manually copied an
> older cygz.dll to there sometimes ago.....I can't remember.

The Cygwin setup program never installs files into system32.  You most
likely have some other piece of software which embedded Cygwin and
helpfully broke your general Cygwin installation by installing Cygwin
DLLs to system32 for you.  If you want to have a functional Cygwin
installation, you would be better off removing the offending software
and ensuring that all Cygwin DLLs are removed from system32.

> Note that I have the registry value to allow "loading DLL from the same
> directory preceding the path" but %windir%\system32 is always the first in
> the PATH environment variable.

This is a well-documented behavior of Windows:

http://msdn.microsoft.com/en-us/library/ms682586%28VS.85%29.aspx

Many of the git subcommands now live in /usr/lib/git-core, so none of
the Cygwin DLLs exist in the same directory as the subcommand binaries.
 If SafeDllSearchMode is disabled, the current directory is searched
next, but no one is likely to have copies of Cygwin DLLs in every
directory in which they may be running commands.  The next fallback in
both safe and non-safe mode is the system directory (system32).  When
the matching DLL is found there, it preempts the use of the DLL you
intended to find via PATH.

This is why it is BAD, BAD, BAD to install third-party DLLs into
system32. :-)

-Jeremy

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

- Raw text -


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