From 1b52b64bd6b3d40344f8d1d4724c523282419050 Mon Sep 17 00:00:00 2001
From: deuce <>
Date: Wed, 1 Dec 2004 06:49:50 +0000
Subject: [PATCH] Force GC after a script is ran.

---
 src/sbbs3/websrvr.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/sbbs3/websrvr.c b/src/sbbs3/websrvr.c
index f7fcd1ac18..3fbde907aa 100644
--- a/src/sbbs3/websrvr.c
+++ b/src/sbbs3/websrvr.c
@@ -744,6 +744,11 @@ static void close_request(http_session_t * session)
 	if(session->socket==INVALID_SOCKET)
 		session->finished=TRUE;
 
+	if(session->js_cx!=NULL && (session->req.dynamic==IS_SSJS || session->req.dynamic==IS_JS)) {
+		lprintf(LOG_INFO,"%04d JavaScript: Garbage Collection",session->socket);
+		JS_GC(session->js_cx);
+	}
+
 	memset(&session->req,0,sizeof(session->req));
 }
 
@@ -2800,6 +2805,7 @@ void http_session_thread(void* arg)
 	if(session.js_runtime!=NULL) {
 		lprintf(LOG_INFO,"%04d JavaScript: Destroying runtime",socket);
 		JS_DestroyRuntime(session.js_runtime);
+		session.js_runtime=NULL;
 	}
 
 #ifdef _WIN32
-- 
GitLab