From 949075dbbdbc2a10b38e5022a4f51d39e391deca Mon Sep 17 00:00:00 2001
From: Kay Sievers <kay.sievers@vrfy.org>
Date: Thu, 13 Nov 2008 18:21:28 +0100
Subject: remove len == 0 check, the index root is always '\0'

---
 udev/udev-rules.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/udev/udev-rules.c b/udev/udev-rules.c
index 796d2c157f..df9fc7877d 100644
--- a/udev/udev-rules.c
+++ b/udev/udev-rules.c
@@ -451,15 +451,10 @@ static int add_string(struct udev_rules *rules, const char *str)
 	unsigned int off;
 	struct trie_node *parent;
 
-	len = strlen(str);
-
-	/* offset 0 is always '\0' */
-	if (len == 0)
-		return 0;
-
 	/* walk trie, start from last character of str to find matching tails */
-	node_idx = 0;
+	len = strlen(str);
 	key = str[len-1];
+	node_idx = 0;
 	for (depth = 0; depth <= len; depth++) {
 		struct trie_node *node;
 		unsigned int child_idx;
@@ -1723,7 +1718,7 @@ struct udev_rules *udev_rules_new(struct udev *udev, int resolve_names)
 	if (rules->trie_nodes == NULL)
 		return NULL;
 	rules->trie_nodes_max = PREALLOC_TRIE;
-	/* offset 0 is the trie root */
+	/* offset 0 is the trie root, with an empty string */
 	memset(rules->trie_nodes, 0x00, sizeof(struct trie_node));
 	rules->trie_nodes_cur = 1;
 
-- 
cgit v1.2.3-54-g00ecf