From e5cb252043e0f5350ba26702e89a73713088d2a3 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Thu, 11 Sep 2008 12:58:57 +0000 Subject: UVL: Fixed dependency handling --- libs/uvl/luasrc/uvl.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libs/uvl/luasrc/uvl.lua b/libs/uvl/luasrc/uvl.lua index 9cdb9948d..f7943d8d7 100644 --- a/libs/uvl/luasrc/uvl.lua +++ b/libs/uvl/luasrc/uvl.lua @@ -663,20 +663,20 @@ end -- Read a dependency specification function UVL._read_dependency( self, values, deps ) - local expr = "%$?[a-zA-Z0-9_]+" + local expr = "%$?[%w_]+" if values then values = ( type(values) == "table" and values or { values } ) for _, value in ipairs(values) do local condition = { } - for val in value:gmatch("[^%s,]+") do - local k, v = val:match("([^%s=]+)%s*=*%s*([^%s]*)") + for val in value:gmatch("[^,]+") do + local k, e, v = val:match("%s*([%w$_.]+)%s*(=?)%s*(.*)") if k and ( k:match("^"..expr.."%."..expr.."%."..expr.."$") or k:match("^"..expr.."%."..expr.."$") or k:match("^"..expr.."$") ) then - condition[k] = v or true + condition[k] = (e == '=') and v or true else return nil end -- cgit v1.2.3