diff --git a/include/server.h b/include/server.h index 09e73e74f..1fa574123 100644 --- a/include/server.h +++ b/include/server.h @@ -50,7 +50,7 @@ namespace kiwix */ void stop(); - void set_root(const std::string& root) { m_root = root; } + void set_root(const std::string& root); void set_addr(const std::string& addr) { m_addr = addr; } void set_port(int port) { m_port = port; } void set_nbThreads(int threads) { m_nbThreads = threads; } diff --git a/src/server.cpp b/src/server.cpp index 2af22f0d3..064ec11b0 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -172,6 +172,17 @@ void Server::stop() { mp_server.reset(nullptr); } +void Server::set_root(const std::string& root) +{ + m_root = root; + if (m_root[0] != '/') { + m_root = "/" + m_root; + } + if (m_root.back() == '/') { + m_root.erase(m_root.size() - 1); + } +} + InternalServer::InternalServer(Library& library, NameMapper* nameMapper,