summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/lib/ejs/ejsParser.c2
-rw-r--r--source4/lib/ejs/var.c3
2 files changed, 4 insertions, 1 deletions
diff --git a/source4/lib/ejs/ejsParser.c b/source4/lib/ejs/ejsParser.c
index 57cb569cdb..72b0889c55 100644
--- a/source4/lib/ejs/ejsParser.c
+++ b/source4/lib/ejs/ejsParser.c
@@ -1555,6 +1555,7 @@ static int evalExpr(Ejs *ep, MprVar *lhs, int rel, MprVar *rhs)
if (lhs->type == MPR_TYPE_STRING) {
if (isdigit((int) lhs->string[0])) {
num = mprVarToNumber(lhs);
+ lhs->allocatedVar = 0;
mprDestroyVar(lhs);
*lhs = mprCreateNumberVar(num);
/* Examine further below */
@@ -1564,6 +1565,7 @@ static int evalExpr(Ejs *ep, MprVar *lhs, int rel, MprVar *rhs)
* Convert the RHS to a string
*/
mprVarToString(&str, MPR_MAX_STRING, 0, rhs);
+ rhs->allocatedVar = 0;
mprDestroyVar(rhs);
*rhs = mprCreateStringVar(str, 1);
mprFree(str);
diff --git a/source4/lib/ejs/var.c b/source4/lib/ejs/var.c
index 6ef1c4d3a3..63c0b7b98d 100644
--- a/source4/lib/ejs/var.c
+++ b/source4/lib/ejs/var.c
@@ -602,7 +602,8 @@ MprVar *mprGetProperty(MprVar *obj, const char *property, MprVar *value)
for (prop = getObjChain(obj->properties, property); prop;
prop = prop->forw) {
- if (prop->name[0] == property[0] && strcmp(prop->name, property) == 0) {
+ if (prop->name &&
+ prop->name[0] == property[0] && strcmp(prop->name, property) == 0) {
break;
}
}