diff --git a/src/mod/languages/mod_spidermonkey_core_db/mod_spidermonkey_core_db.c b/src/mod/languages/mod_spidermonkey_core_db/mod_spidermonkey_core_db.c index 5dbea1c106..568d18557e 100644 --- a/src/mod/languages/mod_spidermonkey_core_db/mod_spidermonkey_core_db.c +++ b/src/mod/languages/mod_spidermonkey_core_db/mod_spidermonkey_core_db.c @@ -214,12 +214,15 @@ static JSBool db_fetch(JSContext * cx, JSObject * obj, uintN argc, jsval * argv, return JS_TRUE; } for (x = 0; x < colcount; x++) { - switch_snprintf(code, sizeof(code), "~_dB_RoW_DaTa_[\"%s\"] = \"%s\"", - (char *) switch_core_db_column_name(dbo->stmt, x), (char *) switch_core_db_column_text(dbo->stmt, x)); - - eval_some_js(code, dbo->cx, dbo->obj, rval); - if (*rval == JS_FALSE) { - return JS_TRUE; + const char *var = (char *) switch_core_db_column_name(dbo->stmt, x); + const char *val = (char *) switch_core_db_column_text(dbo->stmt, x); + + if (var && val) { + switch_snprintf(code, sizeof(code), "~_dB_RoW_DaTa_[\"%s\"] = \"%s\"", var, val); + eval_some_js(code, dbo->cx, dbo->obj, rval); + if (*rval == JS_FALSE) { + return JS_TRUE; + } } }