From 1afba8e5f2d18a46be048b82c068df9cc05c82e0 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Fri, 1 Jan 2010 19:15:11 +0000 Subject: [PATCH] * dcrt0.cc (dll_crt0_1): Move internal locale setting prior to potential globify to prevent creation of unglobbed filenames in the wrong character set. --- winsup/cygwin/ChangeLog | 6 ++++++ winsup/cygwin/dcrt0.cc | 5 +++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index a12412486..5a90ae65c 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,9 @@ +2010-01-01 Christopher Faylor + + * dcrt0.cc (dll_crt0_1): Move internal locale setting prior to + potential globify to prevent creation of unglobbed filenames in the + wrong character set. + 2009-12-28 Corinna Vinschen * fhandler.h (fhandler_socket::wait_for_events): Drop parameter default diff --git a/winsup/cygwin/dcrt0.cc b/winsup/cygwin/dcrt0.cc index dfdc7d09d..31ecd7faf 100644 --- a/winsup/cygwin/dcrt0.cc +++ b/winsup/cygwin/dcrt0.cc @@ -853,6 +853,9 @@ dll_crt0_1 (void *) /* Connect to tty. */ tty::init_session (); + /* Set internal locale to the environment settings. */ + initial_setlocale (); + if (!__argc) { PWCHAR wline = GetCommandLineW (); @@ -937,8 +940,6 @@ dll_crt0_1 (void *) do this for noncygwin case since the signal thread is blocked due to LoadLibrary serialization. */ ld_preload (); - /* Set internal locale to the environment settings. */ - initial_setlocale (); if (user_data->main) cygwin_exit (user_data->main (__argc, __argv, *user_data->envptr)); __asm__ (" \n\