[njs] Fixed GCC 15 build with -Wunterminated-string-initialization.
noreply at nginx.com
noreply at nginx.com
Fri May 2 01:59:02 UTC 2025
details: https://github.com/nginx/njs/commit/e3cfb4f70e203866c1bd06e5fb28fcdc7dd967f8
branches: master
commit: e3cfb4f70e203866c1bd06e5fb28fcdc7dd967f8
user: Dmitry Volyntsev <xeioex at nginx.com>
date: Thu, 1 May 2025 17:05:56 -0700
description:
Fixed GCC 15 build with -Wunterminated-string-initialization.
In file included from src/njs_main.h:48,
from src/njs_diyfp.c:12:
src/njs_string.h: In function ‘njs_string_encode’:
src/njs_string.h:229:36: error: initializer-string for array of ‘unsigned char’
truncates NUL terminator but destination lacks ‘nonstring’ attribute (
17 chars into 16 available) [-Werror=unterminated-string-initialization]
229 | static const u_char hex[16] = "0123456789ABCDEF";
---
external/qjs_query_string_module.c | 2 +-
src/njs_sprintf.c | 4 ++--
src/njs_string.c | 2 +-
src/njs_string.h | 2 +-
src/qjs_buffer.c | 2 +-
5 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/external/qjs_query_string_module.c b/external/qjs_query_string_module.c
index bb787229..8f695677 100644
--- a/external/qjs_query_string_module.c
+++ b/external/qjs_query_string_module.c
@@ -537,7 +537,7 @@ qjs_string_encode(const uint32_t *escape, size_t size, const u_char *src,
u_char *dst)
{
uint8_t byte;
- static const u_char hex[16] = "0123456789ABCDEF";
+ static const u_char hex[] = "0123456789ABCDEF";
do {
byte = *src++;
diff --git a/src/njs_sprintf.c b/src/njs_sprintf.c
index 16ae9004..64fae9c2 100644
--- a/src/njs_sprintf.c
+++ b/src/njs_sprintf.c
@@ -95,8 +95,8 @@ njs_vsprintf(u_char *buf, u_char *end, const char *fmt, va_list args)
njs_bool_t sign;
njs_sprintf_t spf;
- static const u_char hexadecimal[16] = "0123456789abcdef";
- static const u_char HEXADECIMAL[16] = "0123456789ABCDEF";
+ static const u_char hexadecimal[] = "0123456789abcdef";
+ static const u_char HEXADECIMAL[] = "0123456789ABCDEF";
static const u_char nan[] = "[nan]";
static const u_char infinity[] = "[infinity]";
diff --git a/src/njs_string.c b/src/njs_string.c
index c38f455b..6d7c464d 100644
--- a/src/njs_string.c
+++ b/src/njs_string.c
@@ -252,7 +252,7 @@ njs_encode_hex(njs_str_t *dst, const njs_str_t *src)
size_t i, len;
const u_char *start;
- static const u_char hex[16] = "0123456789abcdef";
+ static const u_char hex[] = "0123456789abcdef";
len = src->length;
start = src->start;
diff --git a/src/njs_string.h b/src/njs_string.h
index 1961152f..225721ed 100644
--- a/src/njs_string.h
+++ b/src/njs_string.h
@@ -226,7 +226,7 @@ njs_string_encode(const uint32_t *escape, size_t size, const u_char *src,
u_char *dst)
{
uint8_t byte;
- static const u_char hex[16] = "0123456789ABCDEF";
+ static const u_char hex[] = "0123456789ABCDEF";
do {
byte = *src++;
diff --git a/src/qjs_buffer.c b/src/qjs_buffer.c
index a45f57ce..890b2028 100644
--- a/src/qjs_buffer.c
+++ b/src/qjs_buffer.c
@@ -2354,7 +2354,7 @@ qjs_hex_encode(JSContext *ctx, const njs_str_t *src, njs_str_t *dst)
size_t i, len;
const u_char *start;
- static const u_char hex[16] = "0123456789abcdef";
+ static const u_char hex[] = "0123456789abcdef";
len = src->length;
start = src->start;
More information about the nginx-devel
mailing list