svn commit: r283227 - stable/10/usr.sbin/autofs
Edward Tomasz Napierala
trasz at FreeBSD.org
Thu May 21 13:18:03 UTC 2015
Author: trasz
Date: Thu May 21 13:18:02 2015
New Revision: 283227
URL: https://svnweb.freebsd.org/changeset/base/283227
Log:
MFC r279806:
Minor optimization/cleanup in node_path(); no functional changes.
Modified:
stable/10/usr.sbin/autofs/common.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/usr.sbin/autofs/common.c
==============================================================================
--- stable/10/usr.sbin/autofs/common.c Thu May 21 13:13:56 2015 (r283226)
+++ stable/10/usr.sbin/autofs/common.c Thu May 21 13:18:02 2015 (r283227)
@@ -561,7 +561,6 @@ static char *
node_path_x(const struct node *n, char *x)
{
char *path;
- size_t len;
if (n->n_parent == NULL)
return (x);
@@ -580,14 +579,6 @@ node_path_x(const struct node *n, char *
path = separated_concat(n->n_key, x, '/');
free(x);
- /*
- * Strip trailing slash.
- */
- len = strlen(path);
- assert(len > 0);
- if (path[len - 1] == '/')
- path[len - 1] = '\0';
-
return (node_path_x(n->n_parent, path));
}
@@ -598,8 +589,19 @@ node_path_x(const struct node *n, char *
char *
node_path(const struct node *n)
{
+ char *path;
+ size_t len;
+
+ path = node_path_x(n, checked_strdup(""));
+
+ /*
+ * Strip trailing slash, unless the whole path is "/".
+ */
+ len = strlen(path);
+ if (len > 1 && path[len - 1] == '/')
+ path[len - 1] = '\0';
- return (node_path_x(n, checked_strdup("")));
+ return (path);
}
static char *
More information about the svn-src-stable
mailing list