From c1a33d6bd3b1186471045f86907485d2bb5bba0c Mon Sep 17 00:00:00 2001 From: deuce <> Date: Tue, 10 Nov 2009 22:06:59 +0000 Subject: [PATCH] Rather than copnstructing the prototype, simply return whem resolving with a NULL private data. --- src/sbbs3/js_user.c | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/src/sbbs3/js_user.c b/src/sbbs3/js_user.c index 3677bbcbb3..c78344c647 100644 --- a/src/sbbs3/js_user.c +++ b/src/sbbs3/js_user.c @@ -1202,14 +1202,13 @@ static JSBool js_user_resolve(JSContext *cx, JSObject *obj, jsval id) JSObject* newobj; private_t* p; + if((p=(private_t*)JS_GetPrivate(cx,obj))==NULL) + return(JS_TRUE); + if(id != JSVAL_NULL) name=JS_GetStringBytes(JSVAL_TO_STRING(id)); if(name==NULL || strcmp(name, "stats")==0) { - if((p=(private_t*)JS_GetPrivate(cx,obj))==NULL) { - JS_ReportError(cx,getprivate_failure,WHERE); - return(JS_FALSE); - } /* user.stats */ if((newobj=JS_DefineObject(cx, obj, "stats" ,&js_user_stats_class, NULL, JSPROP_ENUMERATE|JSPROP_READONLY))==NULL) @@ -1225,10 +1224,6 @@ static JSBool js_user_resolve(JSContext *cx, JSObject *obj, jsval id) } if(name==NULL || strcmp(name, "security")==0) { - if((p=(private_t*)JS_GetPrivate(cx,obj))==NULL) { - JS_ReportError(cx,getprivate_failure,WHERE); - return(JS_FALSE); - } /* user.security */ if((newobj=JS_DefineObject(cx, obj, "security" ,&js_user_security_class, NULL, JSPROP_ENUMERATE|JSPROP_READONLY))==NULL) @@ -1243,10 +1238,6 @@ static JSBool js_user_resolve(JSContext *cx, JSObject *obj, jsval id) } if(name==NULL || strcmp(name, "limits")==0) { - if((p=(private_t*)JS_GetPrivate(cx,obj))==NULL) { - JS_ReportError(cx,getprivate_failure,WHERE); - return(JS_FALSE); - } /* user.limits */ if((newobj=JS_DefineObject(cx, obj, "limits" ,&js_user_limits_class, NULL, JSPROP_ENUMERATE|JSPROP_READONLY))==NULL) @@ -1270,7 +1261,7 @@ static JSBool js_user_enumerate(JSContext *cx, JSObject *obj) static JSClass js_user_class = { "User" /* name */ - ,JSCLASS_HAS_PRIVATE|JSCLASS_CONSTRUCT_PROTOTYPE /* flags */ + ,JSCLASS_HAS_PRIVATE /* flags */ ,JS_PropertyStub /* addProperty */ ,JS_PropertyStub /* delProperty */ ,js_user_get /* getProperty */ -- GitLab