From 7a10bbe77a31158da0573031f8d6a50812262858 Mon Sep 17 00:00:00 2001 From: Martin Sustrik Date: Thu, 29 Sep 2011 11:35:31 +0200 Subject: Bug in subscription matching fixed (issue 263) Signed-off-by: Martin Sustrik --- src/mtrie.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/mtrie.cpp b/src/mtrie.cpp index 01c4fc5..66bea20 100644 --- a/src/mtrie.cpp +++ b/src/mtrie.cpp @@ -236,11 +236,12 @@ void zmq::mtrie_t::match (unsigned char *data_, size_t size_, } // If there are multiple subnodes. - if (data_ [0] < min || data_ [0] >= min + count) + if (data_ [0] < current->min || data_ [0] >= + current->min + current->count) break; - if (!current->next.table [data_ [0] - min]) + if (!current->next.table [data_ [0] - current->min]) break; - current = current->next.table [data_ [0] - min]; + current = current->next.table [data_ [0] - current->min]; data_++; size_--; } -- cgit v1.2.3