summaryrefslogtreecommitdiff
path: root/tex/context/base/luat-sta.lua
diff options
context:
space:
mode:
authorMarius <mariausol@gmail.com>2010-09-15 09:21:49 +0300
committerMarius <mariausol@gmail.com>2010-09-15 09:21:49 +0300
commit3baed6092e175a237fb3f11144b5abf990c80759 (patch)
tree704ba449a1cce3d75514d9431bf64322601adea1 /tex/context/base/luat-sta.lua
parent37b0c79d3951304959d24218874992d125bf9854 (diff)
downloadcontext-3baed6092e175a237fb3f11144b5abf990c80759.tar.gz
beta 2010.09.14 23:27
Diffstat (limited to 'tex/context/base/luat-sta.lua')
-rw-r--r--tex/context/base/luat-sta.lua14
1 files changed, 10 insertions, 4 deletions
diff --git a/tex/context/base/luat-sta.lua b/tex/context/base/luat-sta.lua
index 7e87b90fb..8b58774d3 100644
--- a/tex/context/base/luat-sta.lua
+++ b/tex/context/base/luat-sta.lua
@@ -60,8 +60,10 @@ local function set_by_tag(tag,key,value,default,persistent)
end
dkey, hkey = post, key
end
- if type(value) == nil then
- value = value or default
+ if value == nil then
+ value = default
+ elseif value == false then
+ -- special case
elseif persistent then
value = value or d[dkey] or default
else
@@ -84,13 +86,17 @@ local function get_by_tag(tag,key,default)
if d then
for k in gmatch(key,"[^%.]+") do
local dk = d[k]
- if dk then
+ if dk ~= nil then
d = dk
else
return default
end
end
- return d or default
+ if d == false then
+ return false
+ else
+ return d or default
+ end
end
end
end