From 6202dc0a11cae9124cbec3ad3fff60e6f9510b19 Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Sat, 13 Oct 2001 00:21:10 +0000 Subject: [PATCH] Added 'uptime' member to JS System object. --- src/sbbs3/js_system.c | 7 ++++++- src/sbbs3/main.cpp | 5 ++++- src/sbbs3/sbbs.h | 3 ++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/sbbs3/js_system.c b/src/sbbs3/js_system.c index f96c6bc4c1..04f5d830f7 100644 --- a/src/sbbs3/js_system.c +++ b/src/sbbs3/js_system.c @@ -722,7 +722,8 @@ static JSClass js_node_class = { extern const char* beta_version; -JSObject* DLLCALL js_CreateSystemObject(JSContext* cx, JSObject* parent, scfg_t* cfg) +JSObject* DLLCALL js_CreateSystemObject(JSContext* cx, JSObject* parent + ,scfg_t* cfg, time_t uptime) { char str[256]; uint i; @@ -802,6 +803,10 @@ JSObject* DLLCALL js_CreateSystemObject(JSContext* cx, JSObject* parent, scfg_t* /***********************/ + val = INT_TO_JSVAL(uptime); + if(!JS_SetProperty(cx, sysobj, "uptime", &val)) + return(NULL); + if(!JS_DefineProperties(cx, sysobj, js_system_properties)) return(NULL); diff --git a/src/sbbs3/main.cpp b/src/sbbs3/main.cpp index dcc23e5347..9bd0e67028 100644 --- a/src/sbbs3/main.cpp +++ b/src/sbbs3/main.cpp @@ -82,6 +82,7 @@ static bool scfg_reloaded=true; static char * text[TOTAL_TEXT]; static WORD first_node; static WORD last_node; +static time_t uptime; #ifdef JAVASCRIPT JSRuntime* js_runtime=NULL; @@ -314,7 +315,7 @@ bool sbbs_t::js_initcx() break; /* System Object */ - if(js_CreateSystemObject(js_cx, js_glob, &cfg)==NULL) + if(js_CreateSystemObject(js_cx, js_glob, &cfg, uptime)==NULL) break; /* Client Object */ @@ -2971,6 +2972,8 @@ void DLLCALL bbs_thread(void* arg) thread_up(); + uptime=time(NULL); + status("Initializing"); /* Defeat the lameo hex0rs - the name and copyright must remain intact */ diff --git a/src/sbbs3/sbbs.h b/src/sbbs3/sbbs.h index 106b7af24c..0f704caa80 100644 --- a/src/sbbs3/sbbs.h +++ b/src/sbbs3/sbbs.h @@ -791,7 +791,8 @@ extern "C" { DLLEXPORT JSObject* DLLCALL js_CreateGlobalObject(JSContext* cx, scfg_t* cfg); /* js_system.c */ - DLLEXPORT JSObject* DLLCALL js_CreateSystemObject(JSContext* cx, JSObject* parent, scfg_t* cfg); + DLLEXPORT JSObject* DLLCALL js_CreateSystemObject(JSContext* cx, JSObject* parent + ,scfg_t* cfg, time_t uptime); /* js_client.c */ DLLEXPORT JSObject* DLLCALL js_CreateClientObject(JSContext* cx, JSObject* parent -- GitLab