From bdfd467ef1ea44d40d994c1d6edb090421aca774 Mon Sep 17 00:00:00 2001 From: Kaarle Ritvanen Date: Wed, 25 Jun 2014 16:28:35 +0300 Subject: augeas backend: allow '#' as value of key component --- aconf/persistence/backends/augeas.lua | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'aconf/persistence') diff --git a/aconf/persistence/backends/augeas.lua b/aconf/persistence/backends/augeas.lua index 1496d5b..ab73c08 100644 --- a/aconf/persistence/backends/augeas.lua +++ b/aconf/persistence/backends/augeas.lua @@ -66,22 +66,22 @@ local function conv_path(path) assert(mode ~= '&') local comp = path[1] - if contains({'#', '&'}, comp) or key_mode(comp) then - assert(not mode) - mode = comp - elseif not mode then - res = res..'/'..comp - keys = {} - else + if mode then if mode == '#' then assert(type(comp) == 'number') res = append_pred(res, comp) else - assert(type(comp) == 'string' and comp:match('^[%w %_-%.]+$')) + assert(type(comp) == 'string' and comp:match('^[%w %_%-%.%#]+$')) res = append_key_pred(res, mode, comp) table.insert(keys, key(mode)) end mode = nil + + elseif contains({'#', '&'}, comp) or key_mode(comp) then mode = comp + + else + res = res..'/'..comp + keys = {} end table.remove(path, 1) -- cgit v1.2.3