diff --git a/src/sbbs3/js_user.c b/src/sbbs3/js_user.c
index a2558b9b0773df10755c38654896bfa007776dad..42b36bba5600338063cc18c76880244cbefde38f 100644
--- a/src/sbbs3/js_user.c
+++ b/src/sbbs3/js_user.c
@@ -1144,8 +1144,9 @@ JSObject* DLLCALL js_CreateUserObject(JSContext* cx, JSObject* parent, scfg_t* c
 	if(userobj==NULL)
 		return(NULL);
 
-	if((p=(private_t*)malloc(sizeof(private_t)))==NULL)
-		return(NULL);
+	if((p=JS_GetPrivate(cx, userobj)) == NULL)	/* Uses existing private pointer: Fix memory leak? */
+		if((p=(private_t*)malloc(sizeof(private_t)))==NULL)
+			return(NULL);
 
 	p->cfg = cfg;
 	p->user.number = usernumber;