This is an automated email from the ASF dual-hosted git repository.

ChristopherSchultz pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat-connectors.git

commit 730680fbbaeea97162537422c536f7391d6fb0f3
Author: Christopher Schultz <[email protected]>
AuthorDate: Mon Jun 8 16:28:44 2026 -0400

    Make macro definition a little safer
---
 native/common/jk_map.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/native/common/jk_map.c b/native/common/jk_map.c
index 116efd868..812c04853 100644
--- a/native/common/jk_map.c
+++ b/native/common/jk_map.c
@@ -74,13 +74,13 @@
  *                  -- Ralf S. Engelschall <[email protected]>
  */
 #define COMPUTE_KEY_HASH(key, hash)    \
-{                                                    \
-    const unsigned char *p;                          \
-    hash = 0;                                        \
-    for (p = (const unsigned char *)key; *p; p++) {  \
-        hash = hash * 33 + *p;                       \
-    }                                                \
-}
+do {                                                   \
+    const unsigned char *p;                            \
+    (hash) = 0u;                                       \
+    for (p = (const unsigned char *)(key); *p; p++) {  \
+        (hash) = (hash) * 33u + *p;                    \
+    }                                                  \
+} while(0)
 
 static volatile int global_map_id = 0;
 static void trim_prp_comment(char *prp);
@@ -149,7 +149,7 @@ void *jk_map_get(jk_map_t *m, const char *name, const void 
*def)
     if (m && name) {
         unsigned int i;
         unsigned int hash;
-        COMPUTE_KEY_HASH(name, hash)
+        COMPUTE_KEY_HASH(name, hash);
         for (i = 0; i < m->size; i++) {
             if (m->keys[i] == hash && strcmp(m->names[i], name) == 0) {
                 rc = m->values[i];
@@ -167,7 +167,7 @@ int jk_map_get_id(jk_map_t *m, const char *name)
     if (m && name) {
         unsigned int i;
         unsigned int hash;
-        COMPUTE_KEY_HASH(name, hash)
+        COMPUTE_KEY_HASH(name, hash);
         for (i = 0; i < m->size; i++) {
             if (m->keys[i] == hash && strcmp(m->names[i], name) == 0) {
                 rc = i;
@@ -186,7 +186,7 @@ const char *jk_map_get_string(jk_map_t *m, const char 
*name, const char *def)
     if (m && name) {
         unsigned int i;
         unsigned int hash;
-        COMPUTE_KEY_HASH(name, hash)
+        COMPUTE_KEY_HASH(name, hash);
         for (i = 0; i < m->size; i++) {
             if (m->keys[i] == hash && strcmp(m->names[i], name) == 0) {
                 rc = m->values[i];
@@ -376,7 +376,7 @@ int jk_map_add(jk_map_t *m, const char *name, const void 
*value)
 
     if (m && name) {
         unsigned int hash;
-        COMPUTE_KEY_HASH(name, hash)
+        COMPUTE_KEY_HASH(name, hash);
         map_realloc(m);
 
         if (m->size < m->capacity) {
@@ -398,7 +398,7 @@ int jk_map_put(jk_map_t *m, const char *name, const void 
*value, void **old)
     if (m && name) {
         unsigned int i;
         unsigned int hash;
-        COMPUTE_KEY_HASH(name, hash)
+        COMPUTE_KEY_HASH(name, hash);
         for (i = 0; i < m->size; i++) {
             if (m->keys[i] == hash && strcmp(m->names[i], name) == 0) {
                 break;


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to