From e727453ccfa5ce77b815dd84365edf2d7ab79514 Mon Sep 17 00:00:00 2001 From: belliash Date: Tue, 13 Nov 2018 20:24:55 +0100 Subject: [PATCH] Fix var_dump() for mixed arrays. --- engine/hashmap.c | 8 +++++++- engine/memobj.c | 4 +++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/engine/hashmap.c b/engine/hashmap.c index 35d5903..5574e1d 100644 --- a/engine/hashmap.c +++ b/engine/hashmap.c @@ -5569,7 +5569,13 @@ PH7_PRIVATE sxi32 PH7_HashmapDump(SyBlob *pOut, ph7_hashmap *pMap, int ShowType, } SyBlobAppend(&(*pOut), "}", sizeof(char)); } else { - SyBlobAppend(&(*pOut), ")", sizeof(char)); + SyBlobAppend(&(*pOut), "0) {", sizeof("0) {")); +#ifdef __WINNT__ + SyBlobAppend(&(*pOut), "\r\n", sizeof("\r\n") - 1); +#else + SyBlobAppend(&(*pOut), "\n", sizeof(char)); +#endif + SyBlobAppend(&(*pOut), " }", sizeof(" }")); } return rc; } diff --git a/engine/memobj.c b/engine/memobj.c index 8b4eeb2..a677ecf 100644 --- a/engine/memobj.c +++ b/engine/memobj.c @@ -1125,7 +1125,9 @@ PH7_PRIVATE const char *PH7_MemObjTypeDump(ph7_value *pVal) { zType = "null"; } else { if(pVal->iFlags & MEMOBJ_HASHMAP) { - if(pVal->iFlags & MEMOBJ_OBJ) { + if(pVal->iFlags & MEMOBJ_MIXED) { + zType = "array(mixed, "; + } else if(pVal->iFlags & MEMOBJ_OBJ) { zType = "array(object, "; } else if(pVal->iFlags & MEMOBJ_INT) { zType = "array(int, ";