Imbue fs::path with std::codecvt_utf8_utf16 at SetupEnvironment(), so that default string encoding will be utf-8 inside fs::path.
utils: Make fs::path::string() always return utf-8 string on Windows #13877
pull ken2812221 wants to merge 1 commits into bitcoin:master from ken2812221:fs-path-utf8 changing 4 files +6 −6-
ken2812221 commented at 4:43 PM on August 4, 2018: contributor
- ken2812221 force-pushed on Aug 4, 2018
- ken2812221 renamed this:
utils: Make fs::path::string() always return utf-8 string
utils: Make fs::path::string() always return utf-8 string on Windows
on Aug 4, 2018 -
DrahtBot commented at 8:13 PM on August 4, 2018: member
<!--e57a25ab6845829454e8d69fc972939a-->Note to reviewers: This pull request conflicts with the following ones:
- #14123 (gui: Add GUIUtil::bringToFront by promag)
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.
- ken2812221 force-pushed on Aug 4, 2018
- ken2812221 renamed this:
utils: Make fs::path::string() always return utf-8 string on Windows
wip, utils: Make fs::path::string() always return utf-8 string on Windows
on Aug 5, 2018 - ken2812221 renamed this:
wip, utils: Make fs::path::string() always return utf-8 string on Windows
utils: Make fs::path::string() always return utf-8 string on Windows
on Aug 5, 2018 - ken2812221 force-pushed on Aug 5, 2018
- ken2812221 force-pushed on Aug 5, 2018
- ken2812221 force-pushed on Aug 5, 2018
- ken2812221 force-pushed on Aug 5, 2018
- ken2812221 force-pushed on Aug 5, 2018
- laanwj added the label Windows on Aug 6, 2018
- laanwj added the label Utils/log/libs on Aug 6, 2018
- ken2812221 force-pushed on Aug 24, 2018
-
in src/util.cpp:61 in 26d6fe4a10 outdated
57 | @@ -58,6 +58,7 @@ 58 | #ifndef NOMINMAX 59 | #define NOMINMAX 60 | #endif 61 | +#include <codecvt>
NicolasDorier commented at 2:10 AM on August 31, 2018:maybe include only if
WIN32?
ken2812221 commented at 2:44 PM on August 31, 2018:OK. But I'll wait for gitian build done.
ken2812221 commented at 7:02 AM on September 6, 2018:This is already be defined only if WIN32. Forgot about this
MarcoFalke commented at 6:38 PM on September 22, 2018:Previously applied patch detected.
Needs rebase?
ken2812221 commented at 7:45 PM on September 22, 2018:Rebased
MarcoFalke added the label Needs gitian build on Aug 31, 2018DrahtBot removed the label Needs gitian build on Sep 2, 2018NicolasDorier commented at 5:49 AM on September 6, 2018: contributorDone quick code review (on other commits as well), seems ok, I will test more deeply later this week. Very excited about this.
in src/qt/guiutil.cpp:63 in 26d6fe4a10 outdated
61 | @@ -62,8 +62,6 @@ 62 | #include <QFontDatabase> 63 | #endif 64 | 65 | -static fs::detail::utf8_codecvt_facet utf8;
ken2812221 commented at 7:06 AM on September 6, 2018:Drop this because this convert between UTF-8 and UCS-2, not UTF-16. Use std::codecvt_utf8_utf16 instead.
ryanofsky commented at 10:46 PM on September 6, 2018:Drop this because this convert between UTF-8 and UCS-2, not UTF-16. Use std::codecvt_utf8_utf16 instead.
This is documented at https://www.boost.org/doc/libs/1_68_0/boost/detail/utf8_codecvt_facet.hpp, in case anybody else is curious.
ryanofsky approvedryanofsky commented at 10:47 PM on September 6, 2018: memberutACK 26d6fe4a10c2c8cd16303835dd7cd5289f2d3b67
in src/qt/guiutil.cpp:765 in 26d6fe4a10 outdated
778 | @@ -781,12 +779,12 @@ void setClipboard(const QString& str) 779 | 780 | fs::path qstringToBoostPath(const QString &path) 781 | { 782 | - return fs::path(path.toStdString(), utf8); 783 | + return fs::path(path.toStdString());
laanwj commented at 9:51 AM on September 13, 2018:doesn't this break support for non-UTF8 path locales on UNIX? (that's why this code was how it was, AFAIK)
ken2812221 commented at 10:00 AM on September 13, 2018:that utf8 is unused on other platform than Windows https://github.com/boostorg/filesystem/blob/16821f7903f02d0bb6bb2ef2503ea41559c6bdf1/include/boost/filesystem/path.hpp#L411-455
laanwj commented at 12:29 PM on September 13, 2018:strange⦠(I don't think it was added for windows back in the day, but I might be misremembering)
ken2812221 commented at 12:36 PM on September 13, 2018:MarcoFalke deleted a comment on Sep 14, 2018ryanofsky commented at 6:32 PM on September 21, 2018: memberDone quick code review (on other commits as well), seems ok, I will test more deeply later this week. Very excited about this. @NicolasDorier, are you still planning on testing this? If not, I think it would be good to get this merged since #13878 depends on it.
Note to reviewers: even though fix here is pretty esoteric, it should be hopefully should be clear that it doesn't effect anything other than fs::path encodings used on windows.
MarcoFalke added this to the milestone 0.18.0 on Sep 21, 2018MarcoFalke added the label Needs gitian build on Sep 21, 2018DrahtBot commented at 1:13 PM on September 22, 2018: member<!--a722867cd34abeea1fadc8d60700f111-->
Gitian builds for commit 920c090f63f4990bf0f3b3d1a6d3d8a8bcd14ba0 (master):
5add2b8c5d2f92c016b67c38cd7bcb27...bitcoin-0.17.99-aarch64-linux-gnu-debug.tar.gz2dd9287bfe0054a700d43fa1a1a00837...bitcoin-0.17.99-aarch64-linux-gnu.tar.gzbfeddd266473d2ee42e0024154b94f08...bitcoin-0.17.99-arm-linux-gnueabihf-debug.tar.gz563fe1ee61aa98a58b4d6ee54b427640...bitcoin-0.17.99-arm-linux-gnueabihf.tar.gzb803740d0ebd757974f0dbb625ed310b...bitcoin-0.17.99-i686-pc-linux-gnu-debug.tar.gzd5a317a657944b70ba44bef1bf512294...bitcoin-0.17.99-i686-pc-linux-gnu.tar.gzd912fd5f4088d206376acc33bc4da109...bitcoin-0.17.99-osx-unsigned.dmg4b7648f123919a8ccfef80ef2d98a048...bitcoin-0.17.99-osx64.tar.gze0a2913a6943585095ccb7f30699f3bd...bitcoin-0.17.99-riscv64-linux-gnu-debug.tar.gz45c1c4cd2c3ecefef4b4241575f0d818...bitcoin-0.17.99-riscv64-linux-gnu.tar.gz1e88ba5a040890225a82de451cb30d28...bitcoin-0.17.99-win32-debug.zip41528e4946c41234dcd261a135ad1906...bitcoin-0.17.99-win32-setup-unsigned.exe9ee4bcf78f7e6b4479373835b1fcdea9...bitcoin-0.17.99-win32.zip6733ab2a92fa54e674dc15d310185aa4...bitcoin-0.17.99-win64-debug.zip1f1067b5af920d7428a8971f10faa0c8...bitcoin-0.17.99-win64-setup-unsigned.exe98414b1d8cdc92ea71e8501d74865abe...bitcoin-0.17.99-win64.zip510d753b2229834551a4afa12c9f8815...bitcoin-0.17.99-x86_64-linux-gnu-debug.tar.gz7fde6af663905ff64808e0596064a4d2...bitcoin-0.17.99-x86_64-linux-gnu.tar.gz9336ca1ae6af5ba26d2130eb70fff3e5...bitcoin-0.17.99.tar.gz84f43e005c3039e99c674ac3cd11d93e...bitcoin-linux-0.18-res.yml9ee4af5353a33f0a45a15c7886e420d1...bitcoin-linux-build.logd94f28a06a9a2ce7b248618d6eba30c4...bitcoin-osx-0.18-res.ymld635753718014e38f638fafecba212e3...bitcoin-osx-build.logb8b293ea809ebae35158248b46b4fdea...bitcoin-win-0.18-res.yml1dfbf577772d83e8c45d7ba0c9ec66f0...bitcoin-win-build.log
Gitian builds for commit af0794a4f1e0a892780150c6069154f8327cb1e2 (master and this pull):
29ef34325ffd34004dcba124e7a0f5f3...bitcoin-0.17.99-aarch64-linux-gnu-debug.tar.gzfff26d92c7585a434c54ea81e9441fca...bitcoin-0.17.99-aarch64-linux-gnu.tar.gz6a902b7cc77048a5fd95d3496b957f79...bitcoin-0.17.99-arm-linux-gnueabihf-debug.tar.gz2c27debec0ca9628c863f66a9c3b205d...bitcoin-0.17.99-arm-linux-gnueabihf.tar.gz036d3f56dd05a9bb3d9069bbeffded6a...bitcoin-0.17.99-i686-pc-linux-gnu-debug.tar.gz0627dbd5284d536b5d7e3dba9d3c13a3...bitcoin-0.17.99-i686-pc-linux-gnu.tar.gz809dc12565fc7ba0cde0d5c66cf9de33...bitcoin-0.17.99-osx-unsigned.dmgd0c0aa9f02b3cee692359d5603da2738...bitcoin-0.17.99-osx64.tar.gz76edf5708313d76fe6f8e856f993c2b5...bitcoin-0.17.99-riscv64-linux-gnu-debug.tar.gzfaa68209be8d98cc148a2edfd2d853ab...bitcoin-0.17.99-riscv64-linux-gnu.tar.gzcc4a4de6e5d9f2fd4c117a7f9e4bca52...bitcoin-0.17.99-win32-debug.zip3146a45238b0288424e6bdedaa0ab6a0...bitcoin-0.17.99-win32-setup-unsigned.exeb07ca6ea16be7547b826d3943dddb033...bitcoin-0.17.99-win32.zipa3f425fe369fc7df5a298cf24bde5dd2...bitcoin-0.17.99-win64-debug.zipdedf1210179dce61f087c49a29889dfd...bitcoin-0.17.99-win64-setup-unsigned.exedc1fa2c9bca670b5ec2e5a003783cbad...bitcoin-0.17.99-win64.zipbabd859064c6bc7811d9e44ac8d45efd...bitcoin-0.17.99-x86_64-linux-gnu-debug.tar.gz17aece27454c6116dc295230d3ba907e...bitcoin-0.17.99-x86_64-linux-gnu.tar.gz5ec9b7a29ae92209a452844a6d10d376...bitcoin-0.17.99.tar.gz47b1084ba14ae69f056a2a0ffa2308b5...bitcoin-linux-0.18-res.ymlf32286bf9ae9b08c9274a512fc8da4ce...bitcoin-linux-build.log381f62a6b76890b5511881d2e39270be...bitcoin-osx-0.18-res.ymla469e9bd7e8a857676635b04c7491921...bitcoin-osx-build.logb6b1d460230e1d1fe9e11d3eae3080fe...bitcoin-win-0.18-res.yml8e6ff4df9f1ce9302b6b3e02799a315e...bitcoin-win-build.log
DrahtBot removed the label Needs gitian build on Sep 22, 2018Make fs::path::string() always return utf-8 string 2c3eade704ken2812221 force-pushed on Sep 22, 2018MarcoFalke commented at 8:30 PM on September 22, 2018: memberutACK 2c3eade704f63b360926de9e975ce80143781679 (Only checked that this does't affect linux)
laanwj commented at 11:33 AM on September 23, 2018: memberutACK 2c3eade704f63b360926de9e975ce80143781679
MarcoFalke merged this on Sep 25, 2018MarcoFalke closed this on Sep 25, 2018MarcoFalke referenced this in commit cc7258bdfb on Sep 25, 2018ken2812221 deleted the branch on Sep 25, 2018Warrows referenced this in commit fbec2557ef on Oct 14, 2019Warrows referenced this in commit d88bdc5aaa on Nov 23, 2019Munkybooty referenced this in commit 21b3d1556d on Jul 10, 2021Munkybooty referenced this in commit f6d9b44801 on Jul 10, 2021Munkybooty referenced this in commit 7f1c2c0d89 on Jul 11, 2021Munkybooty referenced this in commit aa5cb13a18 on Jul 12, 2021Munkybooty referenced this in commit 7de0b07a92 on Jul 12, 2021Munkybooty referenced this in commit 4749c7e566 on Jul 13, 2021Munkybooty referenced this in commit e8c2117b16 on Jul 13, 2021UdjinM6 referenced this in commit 6aea99094b on Jul 13, 2021random-zebra referenced this in commit 61a098a775 on Aug 5, 2021MarcoFalke locked this on Sep 8, 2021LabelsMilestone
0.18.0
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-26 18:15 UTC
More mirrored repositories can be found on mirror.b10c.me