delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2017/03/01/04:19:36

X-Recipient: archive-cygwin AT delorie DOT com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:date:from:to:subject:message-id:reply-to
:references:mime-version:content-type:in-reply-to; q=dns; s=
default; b=rmqlyPFD0035IltZqrJ4QE8OVC1spR/daeuIqysRKuiQVuf5FXHBf
FMiks3CZtWyB/JjEMGCGsJDUeifwCtxnjWotK9qxEMA2Vv4EtCVTABwUlLZAVVxs
KhWzSCcZGCbIMaTqNjQj7Fjn3BZTrwjQoNI9O1tMM9tGOg4qSrmZBQ=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:date:from:to:subject:message-id:reply-to
:references:mime-version:content-type:in-reply-to; s=default;
bh=0PszIvYRDlRhUNFWHc4lchKKX5M=; b=yueQAg/0rlOV6L+fQ2nVeN/6Asjz
k5hyndFNUUtYm7yyjC/n7QIcskdnCvaLZOS5fWE2iRYFn8kw78r7ymWZD9NhXJW6
O7/1BuFp76yJHZjRvWJ67U1Jp9mGS+iH7OmnYLA3upnWR3411rlzrFpfhWDCIVG6
UwxBRBGPfb6k4Wk=
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
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-101.6 required=5.0 tests=BAYES_00,GOOD_FROM_CORINNA_CYGWIN,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_DNSWL_LOW,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=kosenko, Kosenko, kolya, Kolya
X-HELO: drew.franken.de
Date: Wed, 1 Mar 2017 10:19:13 +0100
From: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: All wx apps crash because of nl_langinfo(CODESET) returns garbage
Message-ID: <20170301091913.GC13542@calimero.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <CAKoP8LSc4L5MXUD-MJH6SXz2Ldk2iyzcekUjvExzc6UY0pCHvw AT mail DOT gmail DOT com>
MIME-Version: 1.0
In-Reply-To: <CAKoP8LSc4L5MXUD-MJH6SXz2Ldk2iyzcekUjvExzc6UY0pCHvw@mail.gmail.com>
User-Agent: Mutt/1.7.1 (2016-10-04)

--kVXhAStRUZ/+rrGn
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mar  1 07:56, Kolya Kosenko wrote:
> All wxWidgets-based application crash because call
> nl_langinfo(CODESET) returns sometimes garbage during wxWidgets
> initialization at
> /usr/src/debug/wxWidgets3.0-3.0.2.0-2/src/common/intl.cpp:811:
>     char *oldLocale =3D strdup(setlocale(LC_CTYPE, NULL));
>     setlocale(LC_CTYPE, "");
>     const char *alang =3D nl_langinfo(CODESET);
>     setlocale(LC_CTYPE, oldLocale);
>     free(oldLocale);
> alang variable is not null and garbage here! It causes wxWidgets
> assertion failure at wxString::FromAscii().

At first sight this looks like a bug to me.  The information returned by
nl_langinfo is only guaranteed to be stable if you don't call setlocale
or nl_langinfo again.  If you need the result of nl_langinfo(CODESET)
even after calling setlocale again, you have to strdup it.


Corinna

--=20
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

--kVXhAStRUZ/+rrGn
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJYtpIRAAoJEPU2Bp2uRE+gWcsP/1AZ4Tx9hQAOiWzAHtdYPn6/
ti004BU5V/2ezGANvPQJeail58V95a9o+GbgcYNNaOPQZx/cJsGOuaM7UU9HzHNh
rJtUSiz6p1dh6K0reqWBDVDx+zbT2wSIQRLdo6XdrGjZJ/1uDq2iq5AL5XolV9Q+
S4VwQaPDmy8BKg55Wzi2FKzR7lPEcLjCCdmcNqYmRfyrpfhIG9KoJK9wp7kRe9bw
y6uDZErRl6ctmP/snAZqZbzkMPa8uJBrXgrI8rY0WldD09ArgCQv6ibX9jdyNAwx
RuQbPD965EUDLWrEpLaLioyOy2GO2+CZIpeRYP3wRSKNqwP3mTc/b2VErJSj7sgr
L8wopzJOIyzkO8pqsQYMx6RP3f6/1I+MiE/j5PDVlFXUCNADVz+chYdbM3Z1RQOx
VqjrSlUG3EzNRQkrq+2gnHiy2Glza8U7f6AGSbabxifTInEjGA02hL9ZG9OLAPEP
1pilMfE4JknDkkeaaYrNjb5JJOl6mqMLU6vERWpXGTzCLuRhS8YhAEXOLfGQTEzm
eKyO2d7vqZ8f5jJet2DZZ+9QLriFefvjADVWQEtrqciVgv7jgEph26Udkiv31auv
vRx5M6WP9V0QHccDwZ2QeCCeS+GeK6JRs5+nwoZtSYViWMDypOF1ZSyWKP7vnycH
teyJ6QSXoQLbdKKzH+Ib
=OtYU
-----END PGP SIGNATURE-----

--kVXhAStRUZ/+rrGn--

- Raw text -


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