summaryrefslogtreecommitdiff
path: root/src/os
diff options
context:
space:
mode:
authorCheru Berhanu <cheru@cheru.dev>2025-08-14 18:22:28 -0700
committerCheru Berhanu <cheru@cheru.dev>2025-08-22 14:47:04 -0700
commit292efec669ca35cadccf3abedd39058ec5411bdd (patch)
tree047b67370c601223af73f39828bc5553983e039b /src/os
parent0c722b0e3df759febfc26f44b2381d47ca3cc770 (diff)
terminal: fix build with -Di18n=false
canonicalizeLocale should return a null-terminated string, and didn't previously. Compiler output: ``` src/os/i18n.zig:139:45: error: expected type 'error{NoSpaceLeft}![:0]const u8', found '[]const u8' if (comptime !build_config.i18n) return locale; ^~~~~~ src/os/i18n.zig:139:45: note: destination pointer requires '0' sentinel src/os/i18n.zig:138:21: note: function return type declared here ) error{NoSpaceLeft}![:0]const u8 { ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ```
Diffstat (limited to 'src/os')
-rw-r--r--src/os/i18n.zig7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/os/i18n.zig b/src/os/i18n.zig
index c6bce6fbf..29f7f6bc3 100644
--- a/src/os/i18n.zig
+++ b/src/os/i18n.zig
@@ -136,7 +136,12 @@ pub fn canonicalizeLocale(
buf: []u8,
locale: []const u8,
) error{NoSpaceLeft}![:0]const u8 {
- if (comptime !build_config.i18n) return locale;
+ if (comptime !build_config.i18n) {
+ if (buf.len < locale.len + 1) return error.NoSpaceLeft;
+ @memcpy(buf[0..locale.len], locale);
+ buf[locale.len] = 0;
+ return buf[0..locale.len :0];
+ }
// Fix zh locales for macOS
if (fixZhLocale(locale)) |fixed| {