diff options
author | Ippolitov Igor <iippolitov@nginx.com> | 2023-10-19 12:50:39 +0100 |
---|---|---|
committer | Ippolitov Igor <iippolitov@nginx.com> | 2023-10-19 12:50:39 +0100 |
commit | c43629880472bba8d389dfb0b7ae6d883b0ba499 (patch) | |
tree | acecdcb36cfb85fac3d8cdbfbe473c26ac2e2686 /src/nxt_sprintf.c | |
parent | 8c4425ccb9a413e8d0506e0254f0e84bd89a32a6 (diff) | |
parent | fb33ec86a3b6ca6a844dfa6980bb9e083094abec (diff) | |
download | unit-c43629880472bba8d389dfb0b7ae6d883b0ba499.tar.gz unit-c43629880472bba8d389dfb0b7ae6d883b0ba499.tar.bz2 |
Merged with the default branch.1.31.1-1
Diffstat (limited to 'src/nxt_sprintf.c')
-rw-r--r-- | src/nxt_sprintf.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/nxt_sprintf.c b/src/nxt_sprintf.c index 9c8e27ed..875f43a5 100644 --- a/src/nxt_sprintf.c +++ b/src/nxt_sprintf.c @@ -156,7 +156,8 @@ nxt_vsprintf(u_char *buf, u_char *end, const char *fmt, va_list args) p = va_arg(args, const u_char *); if (nxt_slow_path(p == NULL)) { - goto copy; + buf = nxt_cpymem(buf, null, nxt_length(null)); + continue; } while (*p != '\0' && buf < end) { @@ -174,6 +175,11 @@ nxt_vsprintf(u_char *buf, u_char *end, const char *fmt, va_list args) fmt++; p = va_arg(args, const u_char *); + if (nxt_slow_path(p == NULL)) { + buf = nxt_cpymem(buf, null, nxt_length(null)); + continue; + } + goto copy; } @@ -556,14 +562,7 @@ nxt_vsprintf(u_char *buf, u_char *end, const char *fmt, va_list args) copy: - if (nxt_slow_path(p == NULL)) { - p = null; - length = nxt_length(null); - - } else { - length = nxt_min((size_t) (end - buf), length); - } - + length = nxt_min((size_t) (end - buf), length); buf = nxt_cpymem(buf, p, length); continue; } |