Fix static variables. Now access to non-initialized arrays member does not result in segmentation fault.
The build was successful. Details

This commit is contained in:
Rafal Kupiec 2019-04-04 18:18:11 +02:00
parent 9880f9963e
commit 5d369ba851
Signed by: belliash
GPG Key ID: 4E829243E0CFE6B4
1 changed files with 7 additions and 0 deletions

View File

@ -4858,6 +4858,13 @@ static sxi32 VmByteCodeExec(
if(rc != SXRET_OK) {
PH7_VmThrowError(&(*pVm), PH7_CTX_ERR, "Cannot assign a value of incompatible type to variable '$%z'", &pStatic->sName);
}
} else if(pObj->iFlags & MEMOBJ_HASHMAP) {
ph7_hashmap *pMap;
pMap = PH7_NewHashmap(&(*pVm), 0, 0);
if(pMap == 0) {
PH7_VmMemoryError(&(*pVm));
}
pObj->x.pOther = pMap;
}
pObj->nIdx = pStatic->nIdx;
}