diff options
Diffstat (limited to 'strio.h')
-rw-r--r-- | strio.h | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -176,9 +176,10 @@ void str_cat_fmtv(Str *out, Arena *arena, const char *fmt, va_list ap) { case 's': str_cat(out, str_from_cstr(va_arg(ap, const char *)), arena); break; - case 'S': - str_cat(out, va_arg(ap, Str), arena); - break; + case 'S': { + Str s = va_arg(ap, Str); + if (s.n > 0) str_cat(out, s, arena); + } break; case 'i': str_cat_i64(out, va_arg(ap, int32_t), zero_pad?'0':' ', min_width, arena); break; |