Explorar el Código

fix: type(fdb.kv_get("ab")) 报错

这代表type函数有个特性之前没注意到, 它总是假设虚拟栈里有值
Wendal Chen hace 3 años
padre
commit
4254f45d85
Se han modificado 2 ficheros con 4 adiciones y 3 borrados
  1. 2 2
      components/flashdb/src/luat_lib_fdb.c
  2. 2 1
      demo/fdb/main.lua

+ 2 - 2
components/flashdb/src/luat_lib_fdb.c

@@ -208,8 +208,8 @@ static int l_fdb_kv_get(lua_State *L) {
         }
         return 1;
     }
-    // lua_pushboolean(L, 0);
-    return 0;
+    lua_pushnil(L);
+    return 1;
 }
 
 /**

+ 2 - 1
demo/fdb/main.lua

@@ -51,7 +51,8 @@ sys.taskInit(function()
 
     -- 删除测试
     fdb.kv_del("my_bool")
-    log.info("fdb", "my_bool",      type(fdb.kv_get("my_bool")),    fdb.kv_get("my_bool"))
+    local t = fdb.kv_get("my_bool")
+    log.info("fdb", "my_bool",      type(t),    t)
 
     while true do
         sys.wait(100)