diff --git a/src/builder/b-deletion.c b/src/builder/b-deletion.c
index d33b154..9ad920f 100644
--- a/src/builder/b-deletion.c
+++ b/src/builder/b-deletion.c
@@ -228,6 +228,8 @@ sai_deletion_worker(const char *home_dir_unused)
while (rx < 128) {
ssize_t n = read(0, secret + rx, 128 - (unsigned int)rx);
+ if (n < 0 && errno == EINTR)
+ continue;
if (n <= 0)
break;
rx += (size_t)n;
@@ -241,7 +243,11 @@ sai_deletion_worker(const char *home_dir_unused)
/* 2. Read home_dir from stdin */
{
- ssize_t n = read(0, home_dir, sizeof(home_dir) - 1);
+ ssize_t n;
+ do {
+ n = read(0, home_dir, sizeof(home_dir) - 1);
+ } while (n < 0 && errno == EINTR);
+
if (n <= 0) {
lwsl_err("%s: Failed to read home_dir\n", __func__);
return 1;
diff --git a/src/builder/b-ws-server.c b/src/builder/b-ws-server.c
index fa52560..0735e92 100644
--- a/src/builder/b-ws-server.c
+++ b/src/builder/b-ws-server.c
@@ -626,14 +626,6 @@ saib_m_state(void *userobj, void *sh, lws_ss_constate_t state,
spm->refcount++;
lws_dll2_add_tail(&a->mref->list, &a->sai_plat->servers);
- {
- lws_ss_state_return_t r;
- lwsl_user("%s: explicitly requesting tx to kickstart connection\n", __func__);
- r = lws_ss_request_tx(spm->ss);
- if (r)
- lwsl_notice("%s: lws_ss_request_tx returned %d\n", __func__, (int)r);
- }
-
break;
case LWSSSCS_DESTROYING:
@@ -671,8 +663,6 @@ saib_m_state(void *userobj, void *sh, lws_ss_constate_t state,
lws_sul_cancel(&spm->sul_load_report);
lws_dll2_foreach_safe(&builder.sai_plat_owner, spm,
cleanup_on_ss_disconnect);
- if (lws_ss_request_tx(spm->ss))
- lwsl_err("%s: failed to reconnect\n", __func__);
break;
case LWSSSCS_ALL_RETRIES_FAILED: