summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornicm <nicm>2013-10-10 12:28:56 +0000
committernicm <nicm>2013-10-10 12:28:56 +0000
commit6ac7abe8f038c21c1cf33d50a02e970f0de81c09 (patch)
tree0bcb892e3c2319eccaa4c045262812bb9c60eb2a
parent909e1c1a86667bf71eab83ac064f038995bf5d20 (diff)
Remove now unused cmd_get_default_path.
-rw-r--r--cmd.c71
1 files changed, 0 insertions, 71 deletions
diff --git a/cmd.c b/cmd.c
index 2aa5f514..b349da77 100644
--- a/cmd.c
+++ b/cmd.c
@@ -1277,74 +1277,3 @@ cmd_template_replace(const char *template, const char *s, int idx)
return (buf);
}
-
-/*
- * Return the default path for a new pane. Several special values are accepted:
- * the empty string or relative path for the current working directory,
- * ~ for the user's home, - for the base working directory, . for the server
- * working directory.
- */
-const char *
-cmd_default_path(const char *base, const char *current, const char *in)
-{
- const char *root;
- struct environ_entry *envent;
- char tmp[MAXPATHLEN];
- struct passwd *pw;
- int n;
- size_t skip;
- static char path[MAXPATHLEN];
-
- skip = 1;
- if (strcmp(in, "$HOME") == 0 || strncmp(in, "$HOME/", 6) == 0) {
- /* User's home directory - $HOME. */
- skip = 5;
- goto find_home;
- } else if (in[0] == '~' && (in[1] == '\0' || in[1] == '/')) {
- /* User's home directory - ~. */
- goto find_home;
- } else if (in[0] == '-' && (in[1] == '\0' || in[1] == '/')) {
- /* Base working directory. */
- root = base;
- goto complete_path;
- } else if (in[0] == '.' && (in[1] == '\0' || in[1] == '/')) {
- /* Server working directory. */
- if (getcwd(tmp, sizeof tmp) != NULL) {
- root = tmp;
- goto complete_path;
- }
- return ("/");
- } else if (*in == '/') {
- /* Absolute path. */
- return (in);
- } else {
- /* Empty or relative path. */
- if (current != NULL)
- root = current;
- else
- return (base);
- skip = 0;
- goto complete_path;
- }
-
- return (base);
-
-find_home:
- envent = environ_find(&global_environ, "HOME");
- if (envent != NULL && *envent->value != '\0')
- root = envent->value;
- else if ((pw = getpwuid(getuid())) != NULL)
- root = pw->pw_dir;
- else
- return (base);
-
-complete_path:
- if (root[skip] == '\0') {
- strlcpy(path, root, sizeof path);
- return (path);
- }
- n = snprintf(path, sizeof path, "%s/%s", root, in + skip);
- if (n > 0 && (size_t)n < sizeof path)
- return (path);
- return (base);
-}