From 83b4c47348401d96075a21b20a788c0bf93b4a73 Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Thu, 21 Jun 2007 16:30:56 +0000 Subject: [PATCH] fix odbc git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5431 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- .../mod_spidermonkey_odbc.c | 30 +++++++++++++++---- 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/src/mod/languages/mod_spidermonkey_odbc/mod_spidermonkey_odbc.c b/src/mod/languages/mod_spidermonkey_odbc/mod_spidermonkey_odbc.c index c4a92f322e..ae89165cbf 100644 --- a/src/mod/languages/mod_spidermonkey_odbc/mod_spidermonkey_odbc.c +++ b/src/mod/languages/mod_spidermonkey_odbc/mod_spidermonkey_odbc.c @@ -424,21 +424,39 @@ static JSFunctionSpec odbc_methods[] = { static JSPropertySpec odbc_props[] = { -// {"name", odbc_NAME, JSPROP_READONLY|JSPROP_PERMANENT}, + {"name", odbc_NAME, JSPROP_READONLY|JSPROP_PERMANENT}, {0} }; - -static JSBool odbc_getProperty(JSContext * cx, JSObject * obj, jsval id, jsval * vp) +static JSBool odbc_setProperty(JSContext * cx, JSObject * obj, jsval id, jsval *vp) { - JSBool res = JS_TRUE; + char *name = JS_GetStringBytes(JS_ValueToString(cx, id)); - return res; + if (strcmp(name, "_oDbC_dB_RoW_DaTa_")) { + *vp = BOOLEAN_TO_JSVAL(JS_FALSE); + } + return JS_TRUE; +} + +static JSBool odbc_getProperty(JSContext * cx, JSObject * obj, jsval id, jsval *vp) +{ + int param; + char *name = JS_GetStringBytes(JS_ValueToString(cx, id)); + + /* numbers are our props anything else is a method */ + if (name[0] >= 48 && name[0] <= 57) { + param = atoi(name); + } else { + return JS_TRUE; + } + + *vp = BOOLEAN_TO_JSVAL(JS_FALSE); + return JS_TRUE; } JSClass odbc_class = { modname, JSCLASS_HAS_PRIVATE, - JS_PropertyStub, JS_PropertyStub, odbc_getProperty, DEFAULT_SET_PROPERTY, + JS_PropertyStub, JS_PropertyStub, odbc_getProperty, odbc_setProperty, JS_EnumerateStub, JS_ResolveStub, JS_ConvertStub, odbc_destroy, NULL, NULL, NULL, odbc_construct };