diff --git a/src/sbbs3/js_socket.c b/src/sbbs3/js_socket.c
index 6efbdd132ebfd012e13a57849cfdcd7a1d5c0337..22d1d1dafb3e0db7a81bb30b9f3c47605169eeb6 100644
--- a/src/sbbs3/js_socket.c
+++ b/src/sbbs3/js_socket.c
@@ -2338,6 +2338,7 @@ static JSBool js_socket_set(JSContext *cx, JSObject *obj, jsid id, JSBool strict
 			if(b) {
 				if(p->session==-1) {
 					int ret = CRYPT_ERROR_NOTINITED;
+					scfg = JS_GetRuntimePrivate(JS_GetRuntime(cx));
 
 					if(ssl_sync(scfg)) {
 						if((ret=cryptCreateSession(&p->session, CRYPT_UNUSED, tiny == SOCK_PROP_SSL_SESSION ? CRYPT_SESSION_SSL: CRYPT_SESSION_SSL_SERVER))==CRYPT_OK) {
@@ -2355,8 +2356,6 @@ static JSBool js_socket_set(JSContext *cx, JSObject *obj, jsid id, JSBool strict
 									p->tls_server = FALSE;
 								}
 								else {
-                                                                       scfg = JS_GetRuntimePrivate(JS_GetRuntime(cx));
-
                                                                        if (scfg == NULL) {
                                                                                ret = CRYPT_ERROR_NOTAVAIL;
                                                                        }