From d5fe3b1461a3fb9b7c4eff61f5d1363f956befc8 Mon Sep 17 00:00:00 2001
From: Roman Tokarev <rtokarev@corp.mail.ru>
Date: Wed, 6 Jul 2011 17:02:31 +0400
Subject: [PATCH] Fix issue with empty keys in select request.

Don't read field data in case of zero size.
---
 mod/box/box.m | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/mod/box/box.m b/mod/box/box.m
index 2672173919..68c8d71159 100644
--- a/mod/box/box.m
+++ b/mod/box/box.m
@@ -582,7 +582,10 @@ process_select(struct box_txn *txn, u32 limit, u32 offset, struct tbuf *data)
 				return;
 
 			u32 key_len = read_u32(data);
-			void *key = read_field(data);
+			void *key = NULL;
+
+			if (key_len != 0)
+				key = read_field(data);
 
 			/* advance remaining fields of a key */
 			for (int i = 1; i < key_len; i++)
-- 
GitLab