util/startup.lua
branch0.11
changeset 10394 82705ec87253
parent 10393 dbb8dae58265
child 10395 986349fc0f9e
child 10600 cb107ea49b35
--- a/util/startup.lua	Sun Nov 03 22:19:09 2019 +0100
+++ b/util/startup.lua	Mon Nov 04 00:29:49 2019 +0100
@@ -231,8 +231,14 @@
 
 function startup.chdir()
 	if prosody.installed then
+		local lfs = require "lfs";
+		-- Ensure paths are absolute, not relative to the working directory which we're about to change
+		local cwd = lfs.currentdir();
+		prosody.paths.source = config.resolve_relative_path(cwd, prosody.paths.source);
+		prosody.paths.config = config.resolve_relative_path(cwd, prosody.paths.config);
+		prosody.paths.data = config.resolve_relative_path(cwd, prosody.paths.data);
 		-- Change working directory to data path.
-		require "lfs".chdir(prosody.paths.data);
+		lfs.chdir(prosody.paths.data);
 	end
 end