diff options
author | Andreas Klebinger <klebinger.andreas@gmx.at> | 2017-07-27 18:16:09 +0100 |
---|---|---|
committer | Tamar Christina <tamar@zhox.com> | 2017-07-27 21:16:02 +0100 |
commit | 7af0b906116e13fbd90f43f2f6c6b826df2dca77 (patch) | |
tree | 4da8912ab0408e22b119098dd64260b32e935bd9 /rts/RtsFlags.h | |
parent | 791947db6db32ef7d4772a821a0823e558e3c05b (diff) | |
download | haskell-7af0b906116e13fbd90f43f2f6c6b826df2dca77.tar.gz |
Initialize hs_init with UTF8 encoded arguments on Windows.
Summary:
Get utf8 encoded arguments before we call hs_init and use them
instead of ignoring hs_init arguments. This reduces differing
behaviour of the RTS between windows and linux and simplifies
the code involved.
A few testcases were changed to expect the same result on windows
as on linux after the changes.
This fixes #13940.
Test Plan: ./validate
Reviewers: austin, hvr, bgamari, erikd, simonmar, Phyx
Subscribers: Phyx, rwbarton, thomie
GHC Trac Issues: #13940
Differential Revision: https://phabricator.haskell.org/D3739
Diffstat (limited to 'rts/RtsFlags.h')
-rw-r--r-- | rts/RtsFlags.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/rts/RtsFlags.h b/rts/RtsFlags.h index 71ad219d29..c36c64a63b 100644 --- a/rts/RtsFlags.h +++ b/rts/RtsFlags.h @@ -13,6 +13,11 @@ /* Routines that operate-on/to-do-with RTS flags: */ +#if defined(mingw32_HOST_OS) +//The returned buffer has to be freed with stgFree() +char* lpcwstrToUTF8(const wchar_t* utf16_str); +char** getUTF8Args(int* argc); +#endif void initRtsFlagsDefaults (void); void setupRtsFlags (int *argc, char *argv[], RtsConfig rtsConfig); void freeRtsArgs (void); |