diff --git a/src/common/hattrie/hat-trie.c b/src/common/hattrie/hat-trie.c
index 0a582bbe97ec37e8ca9ee8bce121d506751dfe2c..87c67a26f0ad6305cfdabf855740012fca33a397 100644
--- a/src/common/hattrie/hat-trie.c
+++ b/src/common/hattrie/hat-trie.c
@@ -593,6 +593,11 @@ static value_t* hattrie_walk(node_ptr* s, size_t sp,
                 return r;
             }
         }
+
+        /* use trie node value if possible */
+        if (s[sp].t->flag & NODE_HAS_VAL) {
+            return &s[sp].t->val;
+        }
         
         /* consumed whole stack */
         if (sp == 0) {