X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW X-Spam-Check-By: sourceware.org Date: Tue, 13 Mar 2012 20:58:29 +0100 From: David Sastre Medina To: cygwin AT cygwin DOT com Subject: Re: 1.7.10/1.7.11: .Net programs started from a cygwin console may fail. Message-ID: <20120313195829.GA5890@jethro.local.lan> References: <00d601cd0089$75fce540$61f6afc0$@motionview3d.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="OgqxwSJOaUobr8KG" Content-Disposition: inline In-Reply-To: <00d601cd0089$75fce540$61f6afc0$@motionview3d.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com --OgqxwSJOaUobr8KG Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Mar 12, 2012 at 07:51:03PM -0000, James Johnston wrote: > I have also noticed this issue; again it was with the XML serialization f= unctions like Andres Martinelli originally noted. The root of the problem = is that Windows environment variables are not case sensitive, while they *a= re* in a Unix environment. Cygwin passes an environment block with duplica= te identically-named variables (if case insensitive; unique if case sensiti= ve), and this will make some Windows programs go boom, because they assume = the block is maintained in a case-insensitive manner. > The big problem as I see it is that Cygwin, out-of-the-box, creates an en= vironment block that violates a basic assumption of Windows programs - that= the environment block is not case sensitive. I don't know what the soluti= on should be, but it's not this. >=20 > From /etc/profile: >=20 > tmp=3D$(cygpath -w "$ORIGINAL_TMP" 2> /dev/null) > temp=3D$(cygpath -w "$ORIGINAL_TEMP" 2> /dev/null) > TMP=3D"/tmp" > TEMP=3D"/tmp" >=20 > This code is what causes the crash, by creating these "duplicate" (from a= Windows perspective) keys. >=20 > I would guess that any Windows program that tries to do case-insensitive = lookups in the environment is liable to crash. At the very least, it won't= necessarily give you the answer you expect (if both "TEMP" and "temp" stor= e different values and you do a case insensitive lookup of "TeMp", which is= going to be returned if you don't crash?) There is a test release for base-files addressing this issue. Could you try if that solves this problem for you? --=20 Huella de clave primaria: AD8F BDC0 5A2C FD5F A179 60E7 F79B AB04 5299 EC56 --OgqxwSJOaUobr8KG Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iF4EAREIAAYFAk9fpuUACgkQ95urBFKZ7FYAegD/ZGYl6ZC0drTKczDwSj88EUYn lU8KpRLeXaV8yMrLiXgA/2Ff2s++kyZdRoZ3iKrv2W1IWR68b31UQAudk1wwDYZS =jloH -----END PGP SIGNATURE----- --OgqxwSJOaUobr8KG--