Fix exception when passing null as PARAM arg

This commit is contained in:
Zaid Abdulla committed 2020-08-19 20:04:36 -07:00
1 parent ec44ccfc07
commit 19c5bb03ea
3 files changed
+4 -2

No files matched your search

+1 -1
View File
@@ -84,7 +84,7 @@ export async function connectionRequest(
const evalCallback = (exp): Expression => { const evalCallback = (exp): Expression => {
if (!Array.isArray(exp)) return exp; if (!Array.isArray(exp)) return exp;
if (exp[0] === "PARAM") { if (exp[0] === "PARAM" && typeof exp[1] === "string") {
let name = exp[1]; let name = exp[1];
if (name === "id") name = "DeviceID.ID"; if (name === "id") name = "DeviceID.ID";
else if (name === "serialNumber") name = "DeviceID.SerialNumber"; else if (name === "serialNumber") name = "DeviceID.SerialNumber";
+2
View File
@@ -131,6 +131,8 @@ export function evaluateCallback(exp: Expression): Expression {
if (exp[2] == null) return null; if (exp[2] == null) return null;
if (!isArray(exp[2])) return toString(exp[2]).toLowerCase(); if (!isArray(exp[2])) return toString(exp[2]).toLowerCase();
} }
} else if (exp[0] === "PARAM") {
if (exp[1] == null) return null;
} else if (exp[0] === "AND") { } else if (exp[0] === "AND") {
for (let i = 1; i < exp.length; ++i) for (let i = 1; i < exp.length; ++i)
if (!Array.isArray(exp[i]) && exp[i] != null && !exp[i]) return false; if (!Array.isArray(exp[i]) && exp[i] != null && !exp[i]) return false;
+1 -1
View File
@@ -113,7 +113,7 @@ export function configContextCallback(
exp: Expression exp: Expression
): Expression { ): Expression {
if (!Array.isArray(exp)) return exp; if (!Array.isArray(exp)) return exp;
if (exp[0] === "PARAM") { if (exp[0] === "PARAM" && typeof exp[1] === "string") {
let name = exp[1]; let name = exp[1];
if (name === "id") name = "DeviceID.ID"; if (name === "id") name = "DeviceID.ID";
else if (name === "serialNumber") name = "DeviceID.SerialNumber"; else if (name === "serialNumber") name = "DeviceID.SerialNumber";