mirror of
https://github.com/badaix/snapcast.git
synced 2025-05-31 01:46:16 +02:00
fixed crash during shutdown
This commit is contained in:
parent
438523f527
commit
4db8696889
3 changed files with 9 additions and 2 deletions
|
@ -33,6 +33,11 @@ ControlServer::ControlServer(const ControlServerSettings& controlServerSettings)
|
|||
}
|
||||
|
||||
|
||||
ControlServer::~ControlServer()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void ControlServer::send(const msg::BaseMessage* message)
|
||||
{
|
||||
std::unique_lock<std::mutex> mlock(mutex_);
|
||||
|
@ -160,9 +165,10 @@ void ControlServer::start()
|
|||
|
||||
void ControlServer::stop()
|
||||
{
|
||||
io_service_.stop();
|
||||
acceptor_->cancel();
|
||||
io_service_.stop();
|
||||
acceptThread_.join();
|
||||
pipeReader_->stop();
|
||||
std::unique_lock<std::mutex> mlock(mutex_);
|
||||
for (auto it = sessions_.begin(); it != sessions_.end(); ++it)
|
||||
(*it)->stop();
|
||||
|
|
|
@ -61,6 +61,7 @@ class ControlServer : public MessageReceiver, PipeListener
|
|||
{
|
||||
public:
|
||||
ControlServer(const ControlServerSettings& controlServerSettings);
|
||||
virtual ~ControlServer();
|
||||
|
||||
void start();
|
||||
void stop();
|
||||
|
|
|
@ -113,7 +113,7 @@ void OggEncoder::encode(const msg::PcmChunk* chunk)
|
|||
if (res > 0)
|
||||
{
|
||||
res /= (sampleFormat_.rate / 1000.);
|
||||
logO << "res: " << res << "\n";
|
||||
// logO << "res: " << res << "\n";
|
||||
lastGranulepos = os.granulepos;
|
||||
// make oggChunk smaller
|
||||
oggChunk->payload = (char*)realloc(oggChunk->payload, pos);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue