From 303fe7c6ae27c5a8d57ba23eb38fa51aaf84d3c2 Mon Sep 17 00:00:00 2001 From: Vaclav Valicek Date: Wed, 27 Mar 2019 08:00:13 +0100 Subject: [PATCH] resolves #87: Fix archive url: missing slash Terminate default URL with slash, add slash to custom URL when absent --- etc/laminar.conf | 2 +- src/laminar.cpp | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/etc/laminar.conf b/etc/laminar.conf index 2b479fe..9aa2701 100644 --- a/etc/laminar.conf +++ b/etc/laminar.conf @@ -51,4 +51,4 @@ ### uses a very naive and inefficient method. Best to let a real ### webserver handle serving those requests. ### -#LAMINAR_ARCHIVE_URL=http://backbone.example.com/ci/archive +#LAMINAR_ARCHIVE_URL=http://backbone.example.com/ci/archive/ diff --git a/src/laminar.cpp b/src/laminar.cpp index 54bd7f9..6e712d9 100644 --- a/src/laminar.cpp +++ b/src/laminar.cpp @@ -56,7 +56,7 @@ namespace { // Default values when none were supplied in $LAMINAR_CONF_FILE (/etc/laminar.conf) constexpr const char* INTADDR_RPC_DEFAULT = "unix-abstract:laminar"; constexpr const char* INTADDR_HTTP_DEFAULT = "*:8080"; -constexpr const char* ARCHIVE_URL_DEFAULT = "/archive"; +constexpr const char* ARCHIVE_URL_DEFAULT = "/archive/"; } // short syntax helpers for kj::Path @@ -78,8 +78,12 @@ Laminar::Laminar(const char *home) : KJ_ASSERT(home[0] == '/'); archiveUrl = ARCHIVE_URL_DEFAULT; - if(char* envArchive = getenv("LAMINAR_ARCHIVE_URL")) + if(char* envArchive = getenv("LAMINAR_ARCHIVE_URL")) { archiveUrl = envArchive; + if(archiveUrl.back() != '/') + archiveUrl.append("/"); + } + numKeepRunDirs = 0; db = new Database((homePath/"laminar.sqlite").toString(true).cStr());