From: Linus Torvalds Date: Tue, 30 Aug 2011 21:38:39 +0000 (-0700) Subject: Move the "text" nodename hackery out of 'nodename()' X-Git-Url: http://git.tdb.fi/?a=commitdiff_plain;h=e1a939ac626dda5cf97122cb650c553b2d1fcb2a;p=ext%2Fsubsurface.git Move the "text" nodename hackery out of 'nodename()' It's better to do it in the caller. Debug users may well want the full node name. Signed-off-by: Linus Torvalds --- diff --git a/parse.c b/parse.c index 43bf82d..78d84a4 100644 --- a/parse.c +++ b/parse.c @@ -210,12 +210,9 @@ static void entry(const char *name, int size, const char *buffer) static const char *nodename(xmlNode *node, char *buf, int len) { - /* Don't print out the node name if it is "text" */ - if (!strcmp(node->name, "text")) { - node = node->parent; - if (!node || !node->name) - return "root"; - } + + if (!node || !node->name) + return "root"; buf += len; *--buf = 0; @@ -264,6 +261,10 @@ static void visit_one_node(xmlNode *node) if (!len) return; + /* Don't print out the node name if it is "text" */ + if (!strcmp(node->name, "text")) + node = node->parent; + name = nodename(node, buffer, sizeof(buffer)); entry(name, len, content);