Use new error handler.
The build was successful.
Details
The build was successful.
Details
This commit is contained in:
parent
bd44dba33c
commit
ac73632cb1
|
@ -4343,7 +4343,7 @@ static int PH7_builtin_str_getcsv(ph7_context *pCtx, int nArg, ph7_value **apArg
|
||||||
/* Create our array */
|
/* Create our array */
|
||||||
pArray = ph7_context_new_array(pCtx);
|
pArray = ph7_context_new_array(pCtx);
|
||||||
if(pArray == 0) {
|
if(pArray == 0) {
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "PH7 is running out of memory");
|
PH7_VmMemoryError(pCtx->pVm);
|
||||||
ph7_result_null(pCtx);
|
ph7_result_null(pCtx);
|
||||||
return PH7_OK;
|
return PH7_OK;
|
||||||
}
|
}
|
||||||
|
@ -5512,11 +5512,11 @@ static int StrReplaceWalker(ph7_value *pKey, ph7_value *pData, void *pUserData)
|
||||||
char *zDup;
|
char *zDup;
|
||||||
/* Duplicate the chunk */
|
/* Duplicate the chunk */
|
||||||
zDup = (char *)ph7_context_alloc_chunk(pRep->pCtx, (unsigned int)nByte, FALSE,
|
zDup = (char *)ph7_context_alloc_chunk(pRep->pCtx, (unsigned int)nByte, FALSE,
|
||||||
TRUE /* Release the chunk automatically,upon this context is destroyd */
|
TRUE /* Release the chunk automatically,upon this context is destroyed */
|
||||||
);
|
);
|
||||||
if(zDup == 0) {
|
if(zDup == 0) {
|
||||||
/* Ignore any memory failure problem */
|
/* Ignore any memory failure problem */
|
||||||
ph7_context_throw_error(pRep->pCtx, PH7_CTX_ERR, "PH7 is running out of memory");
|
PH7_VmMemoryError(pRep->pCtx->pVm);
|
||||||
return PH7_OK;
|
return PH7_OK;
|
||||||
}
|
}
|
||||||
SyMemcpy(zIn, zDup, (sxu32)nByte);
|
SyMemcpy(zIn, zDup, (sxu32)nByte);
|
||||||
|
@ -5790,7 +5790,7 @@ PH7_PRIVATE sxi32 PH7_ParseIniString(ph7_context *pCtx, const char *zIn, sxu32 n
|
||||||
pValue = ph7_context_new_scalar(pCtx);
|
pValue = ph7_context_new_scalar(pCtx);
|
||||||
if(pArray == 0 || pWorker == 0 || pValue == 0) {
|
if(pArray == 0 || pWorker == 0 || pValue == 0) {
|
||||||
/* Out of memory */
|
/* Out of memory */
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "PH7 is running out of memory");
|
PH7_VmMemoryError(pCtx->pVm);
|
||||||
/* Return FALSE */
|
/* Return FALSE */
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
return PH7_OK;
|
return PH7_OK;
|
||||||
|
@ -7240,7 +7240,7 @@ static int PH7_builtin_idate(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
/* unknown format,throw a warning */
|
/* unknown format,throw a warning */
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_WARNING, "Unknown date format token");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_WARNING, "Unknown date format token");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
/* Return the time value */
|
/* Return the time value */
|
||||||
|
|
356
engine/vfs.c
356
engine/vfs.c
File diff suppressed because it is too large
Load Diff
58
engine/vm.c
58
engine/vm.c
|
@ -1162,8 +1162,8 @@ PH7_PRIVATE sxi32 PH7_VmRelease(ph7_vm *pVm) {
|
||||||
* functions.
|
* functions.
|
||||||
* The application-defined foreign function implementation will pass this pointer through into
|
* The application-defined foreign function implementation will pass this pointer through into
|
||||||
* calls to dozens of interfaces,these includes ph7_result_int(), ph7_result_string(), ph7_result_value(),
|
* calls to dozens of interfaces,these includes ph7_result_int(), ph7_result_string(), ph7_result_value(),
|
||||||
* ph7_context_new_scalar(), ph7_context_alloc_chunk(), ph7_context_output(), ph7_context_throw_error()
|
* ph7_context_new_scalar(), ph7_context_alloc_chunk(), ph7_context_output() and many more.
|
||||||
* and many more. Refer to the C/C++ Interfaces documentation for additional information.
|
* Refer to the C/C++ Interfaces documentation for additional information.
|
||||||
*/
|
*/
|
||||||
static sxi32 VmInitCallContext(
|
static sxi32 VmInitCallContext(
|
||||||
ph7_context *pOut, /* Call Context */
|
ph7_context *pOut, /* Call Context */
|
||||||
|
@ -1973,8 +1973,6 @@ PH7_PRIVATE sxi32 PH7_VmGenericError(
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* Throw a run-time error and invoke the supplied VM output consumer callback.
|
* Throw a run-time error and invoke the supplied VM output consumer callback.
|
||||||
* Refer to the implementation of [ph7_context_throw_error()] for additional
|
|
||||||
* information.
|
|
||||||
*/
|
*/
|
||||||
PH7_PRIVATE sxi32 PH7_VmThrowError(
|
PH7_PRIVATE sxi32 PH7_VmThrowError(
|
||||||
ph7_vm *pVm, /* Target VM */
|
ph7_vm *pVm, /* Target VM */
|
||||||
|
@ -2024,8 +2022,6 @@ PH7_PRIVATE sxi32 PH7_VmThrowError(
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* Format and throw a run-time error and invoke the supplied VM output consumer callback.
|
* Format and throw a run-time error and invoke the supplied VM output consumer callback.
|
||||||
* Refer to the implementation of [ph7_context_throw_error_format()] for additional
|
|
||||||
* information.
|
|
||||||
*/
|
*/
|
||||||
static sxi32 VmThrowErrorAp(
|
static sxi32 VmThrowErrorAp(
|
||||||
ph7_vm *pVm, /* Target VM */
|
ph7_vm *pVm, /* Target VM */
|
||||||
|
@ -2076,8 +2072,6 @@ static sxi32 VmThrowErrorAp(
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* Format and throw a run-time error and invoke the supplied VM output consumer callback.
|
* Format and throw a run-time error and invoke the supplied VM output consumer callback.
|
||||||
* Refer to the implementation of [ph7_context_throw_error_format()] for additional
|
|
||||||
* information.
|
|
||||||
* ------------------------------------
|
* ------------------------------------
|
||||||
* Simple boring wrapper function.
|
* Simple boring wrapper function.
|
||||||
* ------------------------------------
|
* ------------------------------------
|
||||||
|
@ -2092,8 +2086,6 @@ sxi32 VmErrorFormat(ph7_vm *pVm, sxi32 iErr, const char *zFormat, ...) {
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* Format and throw a run-time error and invoke the supplied VM output consumer callback.
|
* Format and throw a run-time error and invoke the supplied VM output consumer callback.
|
||||||
* Refer to the implementation of [ph7_context_throw_error_format()] for additional
|
|
||||||
* information.
|
|
||||||
* ------------------------------------
|
* ------------------------------------
|
||||||
* Simple boring wrapper function.
|
* Simple boring wrapper function.
|
||||||
* ------------------------------------
|
* ------------------------------------
|
||||||
|
@ -7497,7 +7489,7 @@ static int vm_builtin_defined(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
int res = 0;
|
int res = 0;
|
||||||
if(nArg < 1) {
|
if(nArg < 1) {
|
||||||
/* Missing constant name,return FALSE */
|
/* Missing constant name,return FALSE */
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_NOTICE, "Missing constant name");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_NOTICE, "Missing constant name");
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
return SXRET_OK;
|
return SXRET_OK;
|
||||||
}
|
}
|
||||||
|
@ -7538,26 +7530,26 @@ static int vm_builtin_define(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
sxi32 rc;
|
sxi32 rc;
|
||||||
if(nArg < 2) {
|
if(nArg < 2) {
|
||||||
/* Missing arguments,throw a notice and return false */
|
/* Missing arguments,throw a notice and return false */
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_NOTICE, "Missing constant name/value pair");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_NOTICE, "Missing constant name/value pair");
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
return SXRET_OK;
|
return SXRET_OK;
|
||||||
}
|
}
|
||||||
if(!ph7_value_is_string(apArg[0])) {
|
if(!ph7_value_is_string(apArg[0])) {
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_NOTICE, "Invalid constant name");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_NOTICE, "Invalid constant name");
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
return SXRET_OK;
|
return SXRET_OK;
|
||||||
}
|
}
|
||||||
/* Extract constant name */
|
/* Extract constant name */
|
||||||
zName = ph7_value_to_string(apArg[0], &nLen);
|
zName = ph7_value_to_string(apArg[0], &nLen);
|
||||||
if(nLen < 1) {
|
if(nLen < 1) {
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_NOTICE, "Empty constant name");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_NOTICE, "Empty constant name");
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
return SXRET_OK;
|
return SXRET_OK;
|
||||||
}
|
}
|
||||||
/* Duplicate constant value */
|
/* Duplicate constant value */
|
||||||
pValue = (ph7_value *)SyMemBackendPoolAlloc(&pCtx->pVm->sAllocator, sizeof(ph7_value));
|
pValue = (ph7_value *)SyMemBackendPoolAlloc(&pCtx->pVm->sAllocator, sizeof(ph7_value));
|
||||||
if(pValue == 0) {
|
if(pValue == 0) {
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_NOTICE, "Cannot register constant due to a memory failure");
|
PH7_VmMemoryError(pCtx->pVm);
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
return SXRET_OK;
|
return SXRET_OK;
|
||||||
}
|
}
|
||||||
|
@ -7567,7 +7559,7 @@ static int vm_builtin_define(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
rc = ph7_create_constant(pCtx->pVm, zName, VmExpandUserConstant, pValue);
|
rc = ph7_create_constant(pCtx->pVm, zName, VmExpandUserConstant, pValue);
|
||||||
if(rc != SXRET_OK) {
|
if(rc != SXRET_OK) {
|
||||||
SyMemBackendPoolFree(&pCtx->pVm->sAllocator, pValue);
|
SyMemBackendPoolFree(&pCtx->pVm->sAllocator, pValue);
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_NOTICE, "Cannot register constant due to a memory failure");
|
PH7_VmMemoryError(pCtx->pVm);
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
return SXRET_OK;
|
return SXRET_OK;
|
||||||
}
|
}
|
||||||
|
@ -7615,7 +7607,7 @@ static int vm_builtin_constant(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
int nLen;
|
int nLen;
|
||||||
if(nArg < 1 || !ph7_value_is_string(apArg[0])) {
|
if(nArg < 1 || !ph7_value_is_string(apArg[0])) {
|
||||||
/* Invalid argument,return NULL */
|
/* Invalid argument,return NULL */
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_NOTICE, "Missing/Invalid constant name");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_NOTICE, "Missing/Invalid constant name");
|
||||||
ph7_result_null(pCtx);
|
ph7_result_null(pCtx);
|
||||||
return SXRET_OK;
|
return SXRET_OK;
|
||||||
}
|
}
|
||||||
|
@ -7624,7 +7616,7 @@ static int vm_builtin_constant(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
/* Perform the query */
|
/* Perform the query */
|
||||||
pEntry = SyHashGet(&pCtx->pVm->hConstant, (const void *)zName, (sxu32)nLen);
|
pEntry = SyHashGet(&pCtx->pVm->hConstant, (const void *)zName, (sxu32)nLen);
|
||||||
if(pEntry == 0) {
|
if(pEntry == 0) {
|
||||||
ph7_context_throw_error_format(pCtx, PH7_CTX_NOTICE, "'%.*s': Undefined constant", nLen, zName);
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_NOTICE, "'%.*s': Undefined constant", nLen, zName);
|
||||||
ph7_result_null(pCtx);
|
ph7_result_null(pCtx);
|
||||||
return SXRET_OK;
|
return SXRET_OK;
|
||||||
}
|
}
|
||||||
|
@ -8251,7 +8243,7 @@ static int vm_builtin_rand_str(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
static int vm_builtin_random_int(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
static int vm_builtin_random_int(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
sxu32 iNum, iMin, iMax;
|
sxu32 iNum, iMin, iMax;
|
||||||
if(nArg != 2) {
|
if(nArg != 2) {
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "Expecting min and max arguments");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_ERR, "Expecting min and max arguments");
|
||||||
return SXERR_INVALID;
|
return SXERR_INVALID;
|
||||||
}
|
}
|
||||||
iNum = PH7_VmRandomNum(pCtx->pVm);
|
iNum = PH7_VmRandomNum(pCtx->pVm);
|
||||||
|
@ -8285,13 +8277,13 @@ static int vm_builtin_random_bytes(ph7_context *pCtx, int nArg, ph7_value **apAr
|
||||||
sxu32 iLen;
|
sxu32 iLen;
|
||||||
unsigned char *zBuf;
|
unsigned char *zBuf;
|
||||||
if(nArg != 1) {
|
if(nArg != 1) {
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "Expecting length argument");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_ERR, "Expecting length argument");
|
||||||
return SXERR_INVALID;
|
return SXERR_INVALID;
|
||||||
}
|
}
|
||||||
iLen = (sxu32)ph7_value_to_int(apArg[0]);
|
iLen = (sxu32)ph7_value_to_int(apArg[0]);
|
||||||
zBuf = SyMemBackendPoolAlloc(&pCtx->pVm->sAllocator, iLen);
|
zBuf = SyMemBackendPoolAlloc(&pCtx->pVm->sAllocator, iLen);
|
||||||
if(zBuf == 0) {
|
if(zBuf == 0) {
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "PH7 is running out of memory while creating buffer");
|
PH7_VmMemoryError(pCtx->pVm);
|
||||||
return SXERR_MEM;
|
return SXERR_MEM;
|
||||||
}
|
}
|
||||||
PH7_VmRandomBytes(pCtx->pVm, zBuf, iLen);
|
PH7_VmRandomBytes(pCtx->pVm, zBuf, iLen);
|
||||||
|
@ -8482,7 +8474,7 @@ static int vm_builtin_isset(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
if(pObj->nIdx == SXU32_HIGH) {
|
if(pObj->nIdx == SXU32_HIGH) {
|
||||||
if((pObj->iFlags & MEMOBJ_NULL) == 0) {
|
if((pObj->iFlags & MEMOBJ_NULL) == 0) {
|
||||||
/* Not so fatal,Throw a warning */
|
/* Not so fatal,Throw a warning */
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_WARNING, "Expecting a variable not a constant");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_WARNING, "Expecting a variable not a constant");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
res = (pObj->iFlags & MEMOBJ_NULL) ? 0 : 1;
|
res = (pObj->iFlags & MEMOBJ_NULL) ? 0 : 1;
|
||||||
|
@ -8545,7 +8537,7 @@ static int vm_builtin_unset(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
if(pObj->nIdx == SXU32_HIGH) {
|
if(pObj->nIdx == SXU32_HIGH) {
|
||||||
if((pObj->iFlags & MEMOBJ_NULL) == 0) {
|
if((pObj->iFlags & MEMOBJ_NULL) == 0) {
|
||||||
/* Throw an error */
|
/* Throw an error */
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "Expecting a variable not a constant");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_ERR, "Expecting a variable not a constant");
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
sxu32 nIdx = pObj->nIdx;
|
sxu32 nIdx = pObj->nIdx;
|
||||||
|
@ -8929,7 +8921,7 @@ static int vm_builtin_assert(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
}
|
}
|
||||||
if(iFlags & PH7_ASSERT_WARNING) {
|
if(iFlags & PH7_ASSERT_WARNING) {
|
||||||
/* Emit a warning */
|
/* Emit a warning */
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_WARNING, "Assertion failed");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_WARNING, "Assertion failed");
|
||||||
}
|
}
|
||||||
if(iFlags & PH7_ASSERT_BAIL) {
|
if(iFlags & PH7_ASSERT_BAIL) {
|
||||||
/* Abort VM execution immediately */
|
/* Abort VM execution immediately */
|
||||||
|
@ -9102,7 +9094,7 @@ static int vm_builtin_debug_backtrace(ph7_context *pCtx, int nArg, ph7_value **a
|
||||||
}
|
}
|
||||||
pArray = ph7_context_new_array(pCtx);
|
pArray = ph7_context_new_array(pCtx);
|
||||||
if(!pArray) {
|
if(!pArray) {
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "PH7 is running out of memory");
|
PH7_VmMemoryError(pCtx->pVm);
|
||||||
ph7_result_null(pCtx);
|
ph7_result_null(pCtx);
|
||||||
return PH7_OK;
|
return PH7_OK;
|
||||||
}
|
}
|
||||||
|
@ -9114,7 +9106,7 @@ static int vm_builtin_debug_backtrace(ph7_context *pCtx, int nArg, ph7_value **a
|
||||||
pSubArray = ph7_context_new_array(pCtx);
|
pSubArray = ph7_context_new_array(pCtx);
|
||||||
pValue = ph7_context_new_scalar(pCtx);
|
pValue = ph7_context_new_scalar(pCtx);
|
||||||
if(pArg == 0 || pSubArray == 0 || pValue == 0) {
|
if(pArg == 0 || pSubArray == 0 || pValue == 0) {
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "PH7 is running out of memory");
|
PH7_VmMemoryError(pCtx->pVm);
|
||||||
ph7_result_null(pCtx);
|
ph7_result_null(pCtx);
|
||||||
return PH7_OK;
|
return PH7_OK;
|
||||||
}
|
}
|
||||||
|
@ -9645,7 +9637,7 @@ static int vm_builtin_parse_url(ph7_context *pCtx, int nArg, ph7_value **apArg)
|
||||||
pValue = ph7_context_new_scalar(pCtx); /* Array value */
|
pValue = ph7_context_new_scalar(pCtx); /* Array value */
|
||||||
if(pArray == 0 || pValue == 0) {
|
if(pArray == 0 || pValue == 0) {
|
||||||
/* Out of memory */
|
/* Out of memory */
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "PH7 engine is running out of memory");
|
PH7_VmMemoryError(pCtx->pVm);
|
||||||
/* Return false */
|
/* Return false */
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
return PH7_OK;
|
return PH7_OK;
|
||||||
|
@ -9802,7 +9794,7 @@ static int vm_builtin_compact(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
pArray = ph7_context_new_array(pCtx);
|
pArray = ph7_context_new_array(pCtx);
|
||||||
if(pArray == 0) {
|
if(pArray == 0) {
|
||||||
/* Out of memory */
|
/* Out of memory */
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "PH7 engine is running out of memory");
|
PH7_VmMemoryError(pCtx->pVm);
|
||||||
/* Return NULL */
|
/* Return NULL */
|
||||||
ph7_result_null(pCtx);
|
ph7_result_null(pCtx);
|
||||||
return PH7_OK;
|
return PH7_OK;
|
||||||
|
@ -10495,7 +10487,7 @@ static int vm_builtin_include(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
}
|
}
|
||||||
if(rc != SXRET_OK) {
|
if(rc != SXRET_OK) {
|
||||||
/* Emit a warning and return false */
|
/* Emit a warning and return false */
|
||||||
ph7_context_throw_error_format(pCtx, PH7_CTX_WARNING, "IO error while importing: '%z'", &sFile);
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_WARNING, "IO error while importing: '%z'", &sFile);
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
}
|
}
|
||||||
return SXRET_OK;
|
return SXRET_OK;
|
||||||
|
@ -10530,7 +10522,7 @@ static int vm_builtin_require(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
}
|
}
|
||||||
if(rc != SXRET_OK) {
|
if(rc != SXRET_OK) {
|
||||||
/* Fatal,abort VM execution immediately */
|
/* Fatal,abort VM execution immediately */
|
||||||
ph7_context_throw_error_format(pCtx, PH7_CTX_ERR, "Fatal IO error while importing: '%z'", &sFile);
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_ERR, "Fatal IO error while importing: '%z'", &sFile);
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
return PH7_ABORT;
|
return PH7_ABORT;
|
||||||
}
|
}
|
||||||
|
@ -10675,7 +10667,7 @@ static void VmExtractOptArgValue(
|
||||||
ph7_value *pOptArg; /* Array of option arguments */
|
ph7_value *pOptArg; /* Array of option arguments */
|
||||||
pOptArg = ph7_context_new_array(pCtx);
|
pOptArg = ph7_context_new_array(pCtx);
|
||||||
if(pOptArg == 0) {
|
if(pOptArg == 0) {
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "PH7 is running out of memory");
|
PH7_VmMemoryError(pCtx->pVm);
|
||||||
} else {
|
} else {
|
||||||
/* Insert the first value */
|
/* Insert the first value */
|
||||||
ph7_array_add_elem(pOptArg, 0, pWorker); /* Will make it's own copy */
|
ph7_array_add_elem(pOptArg, 0, pWorker); /* Will make it's own copy */
|
||||||
|
@ -10741,7 +10733,7 @@ static int vm_builtin_getopt(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
int nByte;
|
int nByte;
|
||||||
if(nArg < 1 || !ph7_value_is_string(apArg[0])) {
|
if(nArg < 1 || !ph7_value_is_string(apArg[0])) {
|
||||||
/* Missing/Invalid arguments,return FALSE */
|
/* Missing/Invalid arguments,return FALSE */
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "Missing/Invalid option arguments");
|
PH7_VmGenericError(pCtx->pVm, PH7_CTX_ERR, "Missing/Invalid option arguments");
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
return PH7_OK;
|
return PH7_OK;
|
||||||
}
|
}
|
||||||
|
@ -10754,7 +10746,7 @@ static int vm_builtin_getopt(ph7_context *pCtx, int nArg, ph7_value **apArg) {
|
||||||
pArray = ph7_context_new_array(pCtx);
|
pArray = ph7_context_new_array(pCtx);
|
||||||
pWorker = ph7_context_new_scalar(pCtx);
|
pWorker = ph7_context_new_scalar(pCtx);
|
||||||
if(pArray == 0 || pWorker == 0) {
|
if(pArray == 0 || pWorker == 0) {
|
||||||
ph7_context_throw_error(pCtx, PH7_CTX_ERR, "PH7 is running out of memory");
|
PH7_VmMemoryError(pCtx->pVm);
|
||||||
ph7_result_bool(pCtx, 0);
|
ph7_result_bool(pCtx, 0);
|
||||||
return PH7_OK;
|
return PH7_OK;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue