transmission/libtransmission
Mike Gelfand 411b66cf88 fix: use user-preferred locale (#5444)
* Use user-preferred locale

Previous fix adding `L` format specifier was correct but only fixed half
of the problem, as C++ locale is set up to be "C" by default. GTK client
used to call `setlocale(LC_ALL, "")` to set up user-preferred locale
which only affected C functions and `std::locale` (used by libfmt) was
unaware of those changes.

Apply the fix to all the binaries since they're all doing some sort of
output to the user and calling libtransmission helpers, as well as using
libfmt directly.

* Improve libtransmission's json-test

Set the locale C++ way to avoid any sort of inconsistencies, and also
restore it to the old one once finished testing.

* Improve transmission-show test runner script

Quote outputs to avoid CMake error about `message()` being called with
no arguments. Capture stderr to the same output file. Fallback to `git
diff` if `diff` wasn't found. A few other minor changes.
2023-04-27 09:11:06 -05:00
..
.clang-tidy fix: cppcoreguidelines-pro-type-cstyle-cast (#4685) 2023-01-28 15:26:23 -06:00
CMakeLists.txt fix: potential NSString leak in tr_strv_convert_utf8() 2023-04-11 17:36:22 -05:00
announce-list.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
announce-list.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
announcer-common.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
announcer-http.cc fix: intermediate fix for HTTP announce behaviour affected by `bind-address-ipv*` (#5296) 2023-03-28 12:59:42 -05:00
announcer-udp.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
announcer.cc fix: wrong tier value in torrent get tracker stat response (#5274) 2023-03-21 20:23:08 -05:00
announcer.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
bandwidth.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
bandwidth.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
benc.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
bitfield.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
bitfield.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
block-info.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
block-info.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
blocklist.cc fix: blocklists allocate more memory than they need (#4953) 2023-02-19 09:20:23 -06:00
blocklist.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
cache.cc fix: handle block fragments that arrive from peers out-of-order (#4890) 2023-02-14 13:50:28 -06:00
cache.h fix: handle block fragments that arrive from peers out-of-order (#4890) 2023-02-14 13:50:28 -06:00
clients.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
clients.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
completion.cc fix: The right operand of '<' is a garbage value (#5285) 2023-03-23 12:05:11 -05:00
completion.h fix: assertion failed leftUntilDone <= sizeWhenDone (#4879) 2023-02-13 19:51:23 -06:00
crypto-utils-ccrypto.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
crypto-utils-fallback.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
crypto-utils-mbedtls.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
crypto-utils-openssl.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
crypto-utils-wolfssl.cc style: use the new paragraph comment style everywhere (#4634) 2023-01-22 13:21:30 -06:00
crypto-utils.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
crypto-utils.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
error-types.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
error.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
error.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
file-piece-map.cc perf: fix wishlist cpu load regression, pt. 2 (#5273) 2023-03-22 10:24:10 -05:00
file-piece-map.h perf: fix wishlist cpu load regression, pt. 2 (#5273) 2023-03-22 10:24:10 -05:00
file-posix.cc Limit in-kernel file copying to 2 GiB blocks at a time (#5039) 2023-02-25 03:15:17 +00:00
file-win32.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
file.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
file.h daemon: check whether log file is regular and may be flushed (#4612) 2023-01-18 12:46:57 -06:00
handshake.cc fix: try utp connection first; fix utp timeout issues. (#4897) 2023-02-18 10:03:59 -06:00
handshake.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
history.h underscores in documentation comments should be code escaped (#4639) 2023-01-23 10:26:11 -06:00
inout.cc fix: wrong error message when writing to incomplete dir (#5217) 2023-03-13 16:20:39 -05:00
inout.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
interned-string.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
libt.dox
log.cc fix: don't log full path, only the filename of source file (#5055) 2023-02-27 10:02:58 -06:00
log.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
lru-cache.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
magnet-metainfo.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
magnet-metainfo.h fix: crash when magnet dn isn't utf-8 (#5244) 2023-03-19 10:36:16 -05:00
makelog refactor: misc-use-anonymous-namespace pt. 4 (#4550) 2023-01-07 12:58:16 -06:00
makemeta.cc fix: always add `announce` key even when including announce-list (#5106) 2023-03-01 13:10:20 -06:00
makemeta.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
mime-types.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
mime-types.js chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
net.cc fix: tr_net_hasIPv6() (#5312) 2023-03-28 13:41:07 -05:00
net.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
open-files.cc fix: cannot build with clang on Windows (#4978) 2023-02-21 11:08:28 -06:00
open-files.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
peer-common.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
peer-io.cc fix: 4.0.0 bookkeeping of protocol overhead when receiving peer messages (#5091) 2023-02-27 20:25:15 -06:00
peer-io.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
peer-mgr-active-requests.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
peer-mgr-active-requests.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
peer-mgr-wishlist.cc perf: fix wishlist cpu load regression, pt. 2 (#5273) 2023-03-22 10:24:10 -05:00
peer-mgr-wishlist.h perf: fix wishlist cpu load regression, pt. 2 (#5273) 2023-03-22 10:24:10 -05:00
peer-mgr.cc perf: fix wishlist cpu load regression, pt. 2 (#5273) 2023-03-22 10:24:10 -05:00
peer-mgr.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
peer-mse.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
peer-mse.h chore: remove invalid assertion test (#4860) 2023-02-12 18:38:18 -06:00
peer-msgs.cc chore: remove unused header includes (#5227) 2023-03-14 18:36:15 -05:00
peer-msgs.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
peer-socket.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
peer-socket.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
platform-quota.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
platform-quota.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
platform.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
platform.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
port-forwarding-natpmp.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
port-forwarding-natpmp.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
port-forwarding-upnp.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
port-forwarding-upnp.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
port-forwarding.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
port-forwarding.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
quark.cc fix: generate peer-id on launch (#5233) 2023-03-15 20:53:48 -05:00
quark.h fix: generate peer-id on launch (#5233) 2023-03-15 20:53:48 -05:00
resume.cc fix: 5053 old torrent files keep appearing (#5117) 2023-03-01 20:12:19 -06:00
resume.h fix: 5053 old torrent files keep appearing (#5117) 2023-03-01 20:12:19 -06:00
rpc-server.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
rpc-server.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
rpcimpl.cc fix: return success on RPC add-torrent duplicate (#5370) 2023-04-12 13:37:04 -05:00
rpcimpl.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
session-alt-speeds.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
session-alt-speeds.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
session-id.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
session-id.h fix: uninitialized session_id_t values (#5396) 2023-04-20 14:13:51 -05:00
session-settings.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
session-settings.h fix: generate peer-id on launch (#5233) 2023-03-15 20:53:48 -05:00
session-thread.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
session-thread.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
session.cc fix: set log level before constructing tr_session (#5345) 2023-04-03 15:37:28 -05:00
session.h fix: generate peer-id on launch (#5233) 2023-03-15 20:53:48 -05:00
stats.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
stats.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
subprocess-posix.cc refactor: misc-use-anonymous-namespace pt. 4 (#4550) 2023-01-07 12:58:16 -06:00
subprocess-win32.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
subprocess.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
timer-ev.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
timer-ev.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
timer.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
torrent-ctor.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
torrent-files.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
torrent-files.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
torrent-magnet.cc fix: bug that prevented providing the final metadata piece (#5460) 2023-04-26 23:29:07 -05:00
torrent-magnet.h fix: magnet links are always paused when added (#4856) 2023-02-13 12:33:33 -06:00
torrent-metainfo.cc fix: only torrent metainfo display-name as a fallback (#5378) 2023-04-12 17:26:43 -05:00
torrent-metainfo.h fix: do not lose magnet links when upgrading from tr3 to 4 (#4840) 2023-02-12 18:10:54 -06:00
torrent.cc fix: generate peer-id on launch (#5233) 2023-03-15 20:53:48 -05:00
torrent.h fix: generate peer-id on launch (#5233) 2023-03-15 20:53:48 -05:00
torrents.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
torrents.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
tr-arc4.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
tr-assert.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
tr-assert.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
tr-assert.mm Revert "fix: remove abort() call from tr_assert_message() (#4696)" (#4851) 2023-02-12 08:16:20 -06:00
tr-buffer.h perf: in Buffer::Iterator, defer evbuffer API calls (#5420) 2023-04-26 23:29:57 -05:00
tr-dht.cc fix: minor warnings (#5409) 2023-04-20 14:16:09 -05:00
tr-dht.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
tr-getopt.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
tr-getopt.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
tr-lpd.cc chore: remove unused header includes (#5227) 2023-03-14 18:36:15 -05:00
tr-lpd.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
tr-macros.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
tr-popcount.h fix: Remove faulty `popcnt` features checks for MSVC [#4872] (#4886) 2023-02-18 02:11:56 +00:00
tr-strbuf.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
tr-udp.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
tr-utp.cc fix: try utp connection first; fix utp timeout issues. (#4897) 2023-02-18 10:03:59 -06:00
tr-utp.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
transmission.h Don't force fetch metainfo at startup and new torrents. (#4895) 2023-02-14 22:19:47 -06:00
utils-ev.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
utils-ev.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
utils.cc fix: use user-preferred locale (#5444) 2023-04-27 09:11:06 -05:00
utils.h fix: use user-preferred locale (#5444) 2023-04-27 09:11:06 -05:00
utils.mm fix: potential NSString leak in tr_strv_convert_utf8() 2023-04-11 17:36:22 -05:00
variant-benc.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
variant-common.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
variant-converters.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
variant-json.cc fix: escaped representation of non-BMP characters when generating JSON (#5096) 2023-03-02 00:55:16 -06:00
variant.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
variant.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
verify.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
verify.h refactor: make some local pointer vars pointer-to-const (#4262) 2022-11-28 09:45:39 -06:00
version.h.in build: support semver versioning (#3867) 2022-10-05 16:53:10 -05:00
watchdir-base.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
watchdir-generic.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
watchdir-inotify.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
watchdir-kqueue.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
watchdir-win32.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
watchdir.cc chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
watchdir.h fix: cppcoreguidelines-pro-type-cstyle-cast (#4685) 2023-01-28 15:26:23 -06:00
web-utils.cc fix: parsing of ipv6 tracker announce URLs (#5174) 2023-03-07 12:19:12 -06:00
web-utils.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
web.cc fix: crash in curl_easy_pause() (#5161) 2023-03-05 23:42:52 -06:00
web.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
webseed.cc fix: handle block fragments that arrive from peers out-of-order (#4890) 2023-02-14 13:50:28 -06:00
webseed.h chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00