diff options
author | Christopher Faylor <me@cgf.cx> | 2000-12-10 00:45:12 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2000-12-10 00:45:12 +0000 |
commit | ee1d77e4b71f7166d4d8ada84a062bfc73da90e6 (patch) | |
tree | bbe5746e05f5ceb77e4072468ca9a74ef22ff243 /winsup/cygwin/dcrt0.cc | |
parent | 307cb8ba8270a2eaf5bc1331006e0bd67df920ed (diff) | |
download | cygnal-ee1d77e4b71f7166d4d8ada84a062bfc73da90e6.tar.gz cygnal-ee1d77e4b71f7166d4d8ada84a062bfc73da90e6.tar.bz2 cygnal-ee1d77e4b71f7166d4d8ada84a062bfc73da90e6.zip |
* autoload.cc: Autoload CharToOemA.
* dcrt0.cc (dll_crt0_1): Translate command line to OEM if current codepage is
OEM.
* environ.cc: Add new option 'codepage' to CYGWIN environment variable.
* fhandler_clipboard.cc (fhandler_clipboard::read): Read clipboard in OEM mode
if current codepage is OEM.
* fhandler_console.cc (fhandler_console::read): Only translate console input if
current codepage is ANSI.
* fhandler_console.cc (fhandler_console::write_normal): Translate output data
if current codepage is ANSI.
* pinfo.cc (codepage_init): New function. Setup current codepage from CYGWIN
environment variable and set codepage for file APIs.
* security.cc (read_sd): Translate file name to it if current codepage is OEM.
* winsup.h: (sys_wcstombs,sys_mbstowcs): Use current codepage for translations
between multibyte and widechar string and vice versa.
Diffstat (limited to 'winsup/cygwin/dcrt0.cc')
-rw-r--r-- | winsup/cygwin/dcrt0.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/winsup/cygwin/dcrt0.cc b/winsup/cygwin/dcrt0.cc index 1acffca4c..d4a6bb952 100644 --- a/winsup/cygwin/dcrt0.cc +++ b/winsup/cygwin/dcrt0.cc @@ -15,6 +15,8 @@ details. */ #include "exceptions.h" #include <ctype.h> #include <limits.h> +#include <wingdi.h> +#include <winuser.h> #include "sync.h" #include "sigproc.h" #include "pinfo.h" @@ -55,6 +57,7 @@ per_thread NO_COPY *threadstuff[] = {&waitq_storage, BOOL display_title = FALSE; BOOL strip_title_path = FALSE; BOOL allow_glob = TRUE; +codepage_type current_codepage = ansi_cp; int cygwin_finished_initializing = 0; @@ -789,6 +792,9 @@ dll_crt0_1 () char *line = GetCommandLineA (); line = strcpy ((char *) alloca (strlen (line) + 1), line); + if (current_codepage == oem_cp) + CharToOemA ( line, line ); + /* Scan the command line and build argv. Expand wildcards if not called from another cygwin process. */ build_argv (line, __argv, __argc, |