Avoid double-close of Web Server socket on shutdown.

This commit is contained in:
Robin E. R. Davies
2024-11-22 16:17:46 -05:00
parent 1c071ba7f3
commit 6c0622abf8
3 changed files with 3 additions and 30 deletions
+2 -20
View File
@@ -1340,30 +1340,12 @@ namespace pipedal
StopListening();
//linger bit to see of connections will shut down normally
if(WaitForAllEndpointsClosed(timeoutMs/2))
{
return;
}
Lv2Log::warning("WebServer: forcibly closing connections");
{
std::lock_guard<std::recursive_mutex> lock{m_sessionsMutex};
for (auto it = m_connections.begin(); it != m_connections.end(); ++it)
{
try
{
m_endpoint.close(*it, websocketpp::close::status::abnormal_close, "Shutting down");
}
catch (const std::exception &ignored)
{
}
}
}
if(WaitForAllEndpointsClosed(timeoutMs/2))
if(WaitForAllEndpointsClosed(timeoutMs))
{
return;
}
Lv2Log::warning("WebServer: failed to close all connections.");
return;
}
virtual void Join()
-7
View File
@@ -80,13 +80,6 @@ static bool isJackServiceRunning()
return std::filesystem::exists(path);
}
static void AsanCheck()
{
char *t = new char[5];
t[5] = 'x';
delete t;
exit(EXIT_FAILURE);
}
#if ENABLE_BACKTRACE
void segvHandler(int sig) {
+1 -3
View File
@@ -16,12 +16,10 @@ User=pipedal_d
Group=pipedal_d
Restart=always
TimeoutStartSec=60
NotifyAccess=all
RestartSec=5
TimeoutStopSec=15
WorkingDirectory=/var/pipedal
Environment=JACK_PROMISCUOUS_SERVER=audio
Environment=JACK_NO_AUDIO_RESERVATION=1
[Install]