diff --git a/engine/memobj.c b/engine/memobj.c index dd0a401..a15d360 100644 --- a/engine/memobj.c +++ b/engine/memobj.c @@ -1123,8 +1123,21 @@ PH7_PRIVATE const char *PH7_MemObjTypeDump(ph7_value *pVal) { const char *zType = ""; if(pVal->iFlags & MEMOBJ_NULL) { zType = "null"; - } else if(pVal->iFlags & MEMOBJ_HASHMAP) { - zType = "array"; + } else { + if(pVal->iFlags & MEMOBJ_HASHMAP) { + if(pVal->iFlags & MEMOBJ_OBJ) { + zType = "array"; + } else if(pVal->iFlags & MEMOBJ_INT) { + zType = "array"; + } else if(pVal->iFlags & MEMOBJ_REAL) { + zType = "array"; + } else if(pVal->iFlags & MEMOBJ_STRING) { + zType = "array"; + } else if(pVal->iFlags & MEMOBJ_BOOL) { + zType = "array"; + } else if(pVal->iFlags & MEMOBJ_RES) { + zType = "array"; + } } else if(pVal->iFlags & MEMOBJ_OBJ) { zType = "object"; } else if(pVal->iFlags & MEMOBJ_INT) { @@ -1138,6 +1151,7 @@ PH7_PRIVATE const char *PH7_MemObjTypeDump(ph7_value *pVal) { } else if(pVal->iFlags & MEMOBJ_RES) { zType = "resource"; } + } return zType; } /*