Project homepage Mailing List  Warmcat.com  API Docs  Github Mirror 
    npro  
 Modern all-safe Rust Network Protocol library supporting h1, h2, h3, ws, wt sans-IO and with socket IO + tls
git clone https://npro.rs/repo/npro
Author[]Andy Green <andy@warmcat.com> 2025-08-06 06:08 UTC
Committer[]Andy Green <andy@warmcat.com> 2025-08-06 06:08 UTC
Treeddd6cb813da284e130df0f2f37042f6e9365e0c3   Raw Patch
 
builder: no check for stay unless sai-power url exists
builder: no check for stay unless sai-power url exists
diff --git a/src/builder/b-sai.c b/src/builder/b-sai.c index d361a1d..faf0680 100644 --- a/src/builder/b-sai.c +++ b/src/builder/b-sai.c @@ -349,6 +349,10 @@ sai_power_stay_state(void *userobj, void *sh, lws_ss_constate_t state, switch ((int)state) { case LWSSSCS_CREATING: + + if (!builder.url_sai_power) + return LWSSSSRET_DESTROY_ME; + snprintf(builder.path, sizeof(builder.path) - 1, "%s/stay/%s", builder.url_sai_power, builder.host); @@ -377,7 +381,13 @@ LWS_SS_INFO("sai_power", saib_power_stay_t) void sul_stay_cb(lws_sorted_usec_list_t *sul) { - lws_ss_state_return_t r = lws_ss_client_connect(builder.ss_stay); + lws_ss_state_return_t r; + + /* nothing to do if no sai-power coordinates given */ + if (!builder.url_sai_power) + return; + + r = lws_ss_client_connect(builder.ss_stay); if (r) lwsl_ss_err(builder.ss_stay, "Unable to start stay connection (%d)", (int)r); diff --git a/src/builder/b-task.c b/src/builder/b-task.c index b7d0828..f7848ff 100644 --- a/src/builder/b-task.c +++ b/src/builder/b-task.c @@ -787,12 +787,12 @@ saib_ws_json_rx_builder(struct sai_plat_server *spm, const void *in, size_t len) sai_viewer_state_t *vs = (sai_viewer_state_t *)a.dest; char any_busy = 0; - lwsl_notice("Received viewer state update: %u viewers\n", - vs->viewers); + lwsl_notice("Received viewer state update: %u viewers\n", vs->viewers); spm->viewer_count = vs->viewers; if (!vs->viewers) { + lwsl_notice("%s: VIEWERSTATE: no viewers -> no load reports\n", __func__); lws_sul_cancel(&spm->sul_load_report); break; } @@ -813,11 +813,15 @@ saib_ws_json_rx_builder(struct sai_plat_server *spm, const void *in, size_t len) } lws_end_foreach_dll_safe(d, d1); if (!any_busy) { + lwsl_notice("%s: VIEWERSTATE: no busy instances -> no load reports\n", __func__); + lws_sul_cancel(&spm->sul_load_report); break; } /* At least one viewer, start reporting */ + lwsl_notice("%s: VIEWERSTATE: viewers + busy instances -> load reports\n", __func__); + lws_sul_schedule(builder.context, 0, &spm->sul_load_report, saib_sul_load_report_cb, 1); }
Page fetched 0s ago, creation time: 2ms (vhost etag hits: 0%, cache hits: 0%)