aboutsummaryrefslogtreecommitdiff
path: root/core/fmt
diff options
context:
space:
mode:
authorflysand7 <thebumboni@gmail.com>2025-01-24 08:36:01 +1100
committerflysand7 <thebumboni@gmail.com>2025-01-24 08:36:01 +1100
commit7127992625d8d1df4db6140f564526004aa3eaa3 (patch)
treea7996270ec35afe7008f9560ec1d900b9218eaa9 /core/fmt
parent223970671f6017a197be0e12bf8b458341092422 (diff)
Fix the '+' sign placement in the presence of '0'-padding
Diffstat (limited to 'core/fmt')
-rw-r--r--core/fmt/fmt.odin4
1 files changed, 2 insertions, 2 deletions
diff --git a/core/fmt/fmt.odin b/core/fmt/fmt.odin
index da3b419d5..51e70f6b7 100644
--- a/core/fmt/fmt.odin
+++ b/core/fmt/fmt.odin
@@ -1379,9 +1379,9 @@ _pad :: proc(fi: ^Info, s: string) {
if fi.minus { // right pad
io.write_string(fi.writer, s, &fi.n)
fmt_write_padding(fi, width)
- } else if !fi.space && s != "" && s[0] == '-' {
+ } else if !fi.space && s != "" && (s[0] == '-' || s[0] == '+') {
// left pad accounting for zero pad of negative number
- io.write_byte(fi.writer, '-', &fi.n)
+ io.write_byte(fi.writer, s[0], &fi.n)
fmt_write_padding(fi, width)
io.write_string(fi.writer, s[1:], &fi.n)
} else { // left pad