# HG changeset patch # User Matthew Wild # Date 1289418413 0 # Node ID 954b1159f2f3466f1a849fa6eae0b43c1a3c1686 # Parent ae0f83feaff45eb39f6d8411a6042a7b31c32eb0 prosody, configmanager, certmanager: Relocate prosody.resolve_relative_path() to configmanager, and update certmanager (the only user of this function) diff -r ae0f83feaff4 -r 954b1159f2f3 core/certmanager.lua --- a/core/certmanager.lua Wed Nov 10 22:27:09 2010 +0500 +++ b/core/certmanager.lua Wed Nov 10 19:46:53 2010 +0000 @@ -14,7 +14,7 @@ local setmetatable, tostring = setmetatable, tostring; local prosody = prosody; -local resolve_path = prosody.resolve_relative_path; +local resolve_path = configmanager.resolve_relative_path; local config_path = prosody.paths.config; module "certmanager" diff -r ae0f83feaff4 -r 954b1159f2f3 core/configmanager.lua --- a/core/configmanager.lua Wed Nov 10 22:27:09 2010 +0500 +++ b/core/configmanager.lua Wed Nov 10 19:46:53 2010 +0000 @@ -13,6 +13,8 @@ local fire_event = prosody and prosody.events.fire_event or function () end; +local path_sep = package.config:sub(1,1); + module "configmanager" local parsers = {}; @@ -64,6 +66,25 @@ return set(config, host, section, key, value); end +-- Helper function to resolve relative paths (needed by config) +do + local rel_path_start = ".."..path_sep; + function resolve_relative_path(parent_path, path) + if path then + local is_relative; + if path_sep == "/" and path:sub(1,1) ~= "/" then + is_relative = true; + elseif path_sep == "\\" and (path:sub(1,1) ~= "/" and path:sub(2,3) ~= ":\\") then + is_relative = true; + end + if is_relative then + return parent_path..path_sep..path; + end + end + return path; + end +end + function load(filename, format) format = format or filename:match("%w+$"); diff -r ae0f83feaff4 -r 954b1159f2f3 prosody --- a/prosody Wed Nov 10 22:27:09 2010 +0500 +++ b/prosody Wed Nov 10 19:46:53 2010 +0000 @@ -163,23 +163,6 @@ prosody.paths = { source = CFG_SOURCEDIR, config = CFG_CONFIGDIR, plugins = CFG_PLUGINDIR, data = CFG_DATADIR }; - local path_sep = package.config:sub(1,1); - local rel_path_start = ".."..path_sep; - function prosody.resolve_relative_path(parent_path, path) - if path then - local is_relative; - if path_sep == "/" and path:sub(1,1) ~= "/" then - is_relative = true; - elseif path_sep == "\\" and (path:sub(1,1) ~= "/" and path:sub(2,3) ~= ":\\") then - is_relative = true; - end - if is_relative then - return parent_path..path_sep..path; - end - end - return path; - end - prosody.arg = _G.arg; prosody.platform = "unknown"; @@ -310,10 +293,6 @@ require "core.usermanager" require "core.sessionmanager" require "core.stanza_router" - package.loaded['core.componentmanager'] = setmetatable({},{__index=function() - log("warn", "componentmanager is deprecated: %s", debug.traceback():match("\n[^\n]*\n[\s\t]*([^\n]*)")); - return function() end - end}); require "net.http"