Commit 08f5b9f1 authored by Max Kellermann's avatar Max Kellermann

event/MultiSocketMonitor: add method ClearSocketList()

parent 793962c5
......@@ -19,6 +19,7 @@
#include "config.h"
#include "MultiSocketMonitor.hxx"
#include "Loop.hxx"
#include <algorithm>
......@@ -35,6 +36,14 @@ MultiSocketMonitor::~MultiSocketMonitor()
// TODO
}
void
MultiSocketMonitor::ClearSocketList()
{
assert(GetEventLoop().IsInsideOrNull());
fds.clear();
}
#ifndef WIN32
void
......
......@@ -126,6 +126,11 @@ public:
}
/**
* Remove all sockets.
*/
void ClearSocketList();
/**
* Update the known sockets by invoking the given function for
* each one; its return value is the events bit mask. A
* return value of 0 means the socket will be removed from the
......
......@@ -91,8 +91,10 @@ static constexpr Domain alsa_mixer_domain("alsa_mixer");
int
AlsaMixerMonitor::PrepareSockets()
{
if (mixer == nullptr)
if (mixer == nullptr) {
ClearSocketList();
return -1;
}
int count = snd_mixer_poll_descriptors_count(mixer);
if (count < 0)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment