]> git.za3k.com Git - za3k.git/commitdiff
kv 3.1
authorZachary Vance <za3k@za3k.com>
Sat, 7 Mar 2020 05:21:21 +0000 (21:21 -0800)
committerZachary Vance <za3k@za3k.com>
Sat, 7 Mar 2020 05:21:21 +0000 (21:21 -0800)
computercraft/kv

index 1b60916926bfc04239723e99d7292b93d1972cfd..354b3f59f4d022ca77a59425de4bfc186ffbb6c9 100644 (file)
@@ -29,7 +29,7 @@ BOOTSTRAP = '-- To bootstrap run\n  rednet.open("back")\n  _,b,_=rednet.receive(
 
 -- Magic object that is persistent, backed by one file
 FileDB = function(dbFile, immediateWrite)
-  local content = fileRead(path, expect)
+  local content = fileRead(dbFile, expect)
   if content then
     db = textutils.unserialise(content)
     print("loaded "..dbFile)
@@ -47,6 +47,7 @@ FileDB = function(dbFile, immediateWrite)
       o.dirty = false
     end
   end
+  o._db = db
   setmetatable(o, {
   __index=db,
   __newindex=function(d,k,v)
@@ -86,9 +87,11 @@ local hostHandleList = function(host, message)
   print((message.label or "<old>").." list "..(message.filter or "all"))
   local keys = {}
   local filter = message.filter
-  for k,v in pairs(host.db) do
-    if not message.filter or string.find(k, prefix, true)==1 then
-      key[#keys+1] = k
+  local db = host.db
+  if db._db then db = db._db end -- Can't override pairs/ipairs until lua 5.2
+  for k,v in pairs(db) do
+    if not filter or string.find(k, filter)==1 then
+      keys[#keys+1] = k
     end
   end
   return {