-
Notifications
You must be signed in to change notification settings - Fork 36.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Filename and command line encoding issue on Windows #13869
Comments
ken2812221
changed the title
Encoding issue on Windows
Filenam encoding issue on Windows
Aug 3, 2018
ken2812221
changed the title
Filenam encoding issue on Windows
Filename encoding issue on Windows
Aug 3, 2018
This was referenced Aug 5, 2018
ken2812221
changed the title
Filename encoding issue on Windows
Filename and command line encoding issue on Windows
Aug 6, 2018
This was referenced Aug 6, 2018
This was referenced Aug 14, 2018
@sipsorcery @NicolasDorier Mind take a look at this? |
Amazing work, ye. |
laanwj
added a commit
to bitcoin-core/leveldb-subtree
that referenced
this issue
Jan 26, 2019
f8e797a Use utf-8 to decode filename (Chun Kuan Lee) Pull request description: See bitcoin/bitcoin#13869 Enable unicode support for leveldb on Windows CI result for applying this change is available in bitcoin/bitcoin#13787 Tree-SHA512: 860261f973ec7aec8d3051632be8154d87854df8a604ef10b9171701f132c4ba9855ca97fc6e2d529ba322a8100e1e160d5d0f2afe558158bde89979815b5246
random-zebra
added a commit
to PIVX-Project/PIVX
that referenced
this issue
Feb 6, 2021
e2fee5c [GUI] Use wchar_t API explicitly on Windows (Fuzzbawls) Pull request description: backport of bitcoin#13734 to use the wchar API for windows startup function. This is the first in a long list of upstream PRs that aim to bring full Unicode support to Windows clients as detailed in bitcoin#13869 Also included here is the relevant parts of bitcoin#5793, to use per-network auto startup shortcuts. ACKs for top commit: furszy: utACK e2fee5c . random-zebra: utACK e2fee5c and merging... Tree-SHA512: dc4ea84ee10199bdf293977f00c09caf65cbdd1ee2ae14b1adb34fd75c05b847d5971abd17732a77be88bed9e06092b670b09c5760a686b29d64ba8f02d2e4b2
random-zebra
added a commit
to PIVX-Project/PIVX
that referenced
this issue
Aug 5, 2021
63e0be6 [Remove] By-pass logprint-scanner restriction. (furszy) 280ced3 utils: Fix broken Windows filelock (Chun Kuan Lee) be89860 utils: Convert Windows args to utf-8 string (Chun Kuan Lee) e8cfa6e Call unicode API on Windows (Chun Kuan Lee) 1a02a8a tests: Add test case for std::ios_base::ate (Chun Kuan Lee) 2e57cd4 Move boost/std fstream to fsbridge (furszy) 9d8bcd4 utils: Add fsbridge fstream function wrapper (Chun Kuan Lee) d59d48d utils: Convert fs error messages from multibyte to utf-8 (ken2812221) 9ef58cc Logging: use "fmterr" variable name for errors instead of general "e" that can be used by any other function. (furszy) dd94241 utils: Use _wfopen and _wreopen on Windows (Chun Kuan Lee) 3993641 add unicode compatible file_lock for Windows (Chun Kuan Lee) 48349f8 Provide relevant error message if datadir is not writable. (murrayn) Pull request description: As the software is currently using the ANSI encoding on Windows, the user's language settings could affect the proper functioning of the node/wallet, to the point of not be able to open some non-ASCII name files and directories. This solves the Windows encoding issues, completing the entire bitcoin#13869 work path (and some other required backports). Enabling for example users that use non-english characters in directories and file names to be accepted. Backported PRs: * bitcoin#12422. * bitcoin#12630. * bitcoin#13862. * bitcoin#13866. * bitcoin#13877. * bitcoin#13878. * bitcoin#13883. * bitcoin#13884. * bitcoin#13886. * bitcoin#13888. * bitcoin#14192. * bitcoin#13734. * bitcoin#14426. This is built on top of other two PRs that i have open #2423 and #2369. Solves old issues #940 and #2163. TODO: * Backport `assert_start_raises_init_error` and `ErrorMatch` in TestNode` (bitcoin#12718) ACKs for top commit: Fuzzbawls: ACK 63e0be6 random-zebra: ACK 63e0be6 and merging... Tree-SHA512: cb1f7c23abb5b7b3af50bba18652cc2cad93fd7c2fca9c16ffd3fee34c4c152a3b666dfa87fe6b44c430064dcdee4367144dcb4a41203c91b0173b805bdb3d7d
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
This issue tracks the TODO list in order to fix the encoding issue on Window.
Currently Bitcoin Core uses the ANSI encoding on Windows so that it would affected by user's language settings, they might not able to open some non-ASCII name files.
You can test all these changes in #13787 (includes leveldb changes)
Open PRs:
Merged PRs:
_wfopen
instead offopen
on Windows to pass unicode filename (utils: Use _wfopen and _wfreopen on Windows #13866)fs::path
.string()
to be always encoded to utf-8 (utils: Make fs::path::string() always return utf-8 string on Windows #13877)ifstream
andofstream
to accept unicode filename. ( utils: Add fstream wrapper to allow to pass unicode filename on Windows #13878)runCommand
works on unicode filename (utils: run commands using utf-8 string on Windows #13886)(...)A
function to(...)W
on Windows if it is related to filename or command line. (Call unicode API on Windows #13888)The text was updated successfully, but these errors were encountered: