summaryrefslogtreecommitdiffstats
path: root/defaults
diff options
context:
space:
mode:
authorArne H Juul <arnej@yahoo-inc.com>2017-06-13 08:53:09 +0200
committerArne H Juul <arnej@yahoo-inc.com>2017-06-17 15:34:13 +0200
commit26dcbb4f3081a4ef544f5ff53cf1c969cab17496 (patch)
tree74465f040fb36fec69284b0c51e4c00be9436113 /defaults
parenta0e1c22870d39fdf8746c446b6206307832666eb (diff)
VESPA_HOME should not end with / anymore
* best practice for HOME-like env vars is to be just the name of the directory without trailing slash.
Diffstat (limited to 'defaults')
-rw-r--r--defaults/src/main/java/com/yahoo/vespa/defaults/Defaults.java18
-rw-r--r--defaults/src/vespa/defaults.cpp16
2 files changed, 13 insertions, 21 deletions
diff --git a/defaults/src/main/java/com/yahoo/vespa/defaults/Defaults.java b/defaults/src/main/java/com/yahoo/vespa/defaults/Defaults.java
index 0fe6f8abe4f..928b8920e3c 100644
--- a/defaults/src/main/java/com/yahoo/vespa/defaults/Defaults.java
+++ b/defaults/src/main/java/com/yahoo/vespa/defaults/Defaults.java
@@ -31,12 +31,14 @@ public class Defaults {
static private String findVespaHome() {
Optional<String> vespaHomeEnv = Optional.ofNullable(System.getenv("VESPA_HOME"));
if ( ! vespaHomeEnv.isPresent() || vespaHomeEnv.get().trim().isEmpty()) {
- log.info("VESPA_HOME not set, using /opt/vespa/");
- return "/opt/vespa/";
+ log.info("VESPA_HOME not set, using /opt/vespa");
+ return "/opt/vespa";
}
String vespaHome = vespaHomeEnv.get().trim();
- if ( ! vespaHome.endsWith("/"))
- vespaHome = vespaHome + "/";
+ if (vespaHome.endsWith("/")) {
+ int sz = vespaHome.length() - 1;
+ vespaHome = vespaHome.substring(0, sz);
+ }
return vespaHome;
}
@@ -71,9 +73,9 @@ public class Defaults {
public String vespaUser() { return vespaUser; }
/**
- * Returns the path to the root under which Vespa should read and write files, ending by "/".
- *
- * @return the vespa home directory, ending by "/"
+ * Returns the path to the root under which Vespa should read and write files.
+ * Will not end with a "/".
+ * @return the vespa home directory
*/
public String vespaHome() { return vespaHome; }
@@ -90,7 +92,7 @@ public class Defaults {
public String underVespaHome(String path) {
if (path.startsWith("/")) return path;
if (path.startsWith("./")) return path;
- return vespaHome() + path;
+ return vespaHome() + "/" + path;
}
/**
diff --git a/defaults/src/vespa/defaults.cpp b/defaults/src/vespa/defaults.cpp
index 073d5978717..a7d290bde93 100644
--- a/defaults/src/vespa/defaults.cpp
+++ b/defaults/src/vespa/defaults.cpp
@@ -13,8 +13,7 @@
namespace {
-const char *defaultHome = "/opt/vespa/";
-char computedHome[PATH_MAX];
+const char *defaultHome = "/opt/vespa";
const char *defaultUser = "yahoo";
int defaultWebServicePort = 8080;
int defaultPortBase = 19000;
@@ -45,20 +44,11 @@ void findDefaults() {
const char *env = getenv("VESPA_HOME");
if (env != NULL && *env != '\0') {
DIR *dp = NULL;
- if (*env == '/') {
+ if (*env == '/' || *env == '.') {
dp = opendir(env);
}
if (dp != NULL) {
- size_t len = strlen(env);
- if (env[len-1] == '/') {
- // already ends with slash
- defaultHome = env;
- } else {
- // append slash
- strncpy(computedHome, env, PATH_MAX);
- strncat(computedHome, "/", PATH_MAX);
- defaultHome = computedHome;
- }
+ defaultHome = env;
// fprintf(stderr, "debug\tVESPA_HOME is '%s'\n", defaultHome);
closedir(dp);
} else {