mirror of
https://github.com/cloudwu/skynet.git
synced 2026-07-22 02:53:09 +00:00
array may hash part only
This commit is contained in:
@@ -512,7 +512,6 @@ pack_meta_dict(lua_State *L, struct bson *b, int depth) {
|
|||||||
|
|
||||||
static bool
|
static bool
|
||||||
is_rawarray(lua_State *L) {
|
is_rawarray(lua_State *L) {
|
||||||
// test first key, hash part first in Lua 5.4
|
|
||||||
lua_pushnil(L);
|
lua_pushnil(L);
|
||||||
if (lua_next(L, -2) == 0) {
|
if (lua_next(L, -2) == 0) {
|
||||||
// empty table
|
// empty table
|
||||||
@@ -520,17 +519,7 @@ is_rawarray(lua_State *L) {
|
|||||||
}
|
}
|
||||||
lua_Integer firstkey = lua_isinteger(L, -2) ? lua_tointeger(L, -2) : 0;
|
lua_Integer firstkey = lua_isinteger(L, -2) ? lua_tointeger(L, -2) : 0;
|
||||||
lua_pop(L, 2);
|
lua_pop(L, 2);
|
||||||
if (firstkey != 1)
|
return firstkey > 0;
|
||||||
return false;
|
|
||||||
|
|
||||||
size_t len = lua_rawlen(L, -1);
|
|
||||||
lua_pushinteger(L, len);
|
|
||||||
if (lua_next(L,-2) == 0) {
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
lua_pop(L,2);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|||||||
Reference in New Issue
Block a user