mirror of
https://github.com/owntone/owntone-server.git
synced 2025-01-28 15:06:02 -05:00
allow removing of listeners
This commit is contained in:
parent
1714f3dee4
commit
7097dd15eb
@ -45,6 +45,35 @@ listener_add(notify notify_cb)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
listener_remove(notify notify_cb)
|
||||||
|
{
|
||||||
|
struct listener *listener;
|
||||||
|
struct listener *prev;
|
||||||
|
|
||||||
|
listener = listener_list;
|
||||||
|
prev = NULL;
|
||||||
|
|
||||||
|
while (listener)
|
||||||
|
{
|
||||||
|
if (listener->notify_cb == notify_cb)
|
||||||
|
{
|
||||||
|
if (prev)
|
||||||
|
prev->next = listener->next;
|
||||||
|
else
|
||||||
|
listener_list = NULL;
|
||||||
|
|
||||||
|
free(listener);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
prev = listener;
|
||||||
|
listener = listener->next;
|
||||||
|
}
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
listener_notify(enum listener_event_type type)
|
listener_notify(enum listener_event_type type)
|
||||||
{
|
{
|
||||||
|
@ -14,6 +14,9 @@ typedef void (*notify)(enum listener_event_type type);
|
|||||||
int
|
int
|
||||||
listener_add(notify notify_cb);
|
listener_add(notify notify_cb);
|
||||||
|
|
||||||
|
int
|
||||||
|
listener_remove(notify notify_cb);
|
||||||
|
|
||||||
int
|
int
|
||||||
listener_notify(enum listener_event_type type);
|
listener_notify(enum listener_event_type type);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user