mirror of
https://github.com/owntone/owntone-server.git
synced 2025-01-27 06:33:21 -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;
|
||||
}
|
||||
|
||||
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
|
||||
listener_notify(enum listener_event_type type)
|
||||
{
|
||||
|
@ -14,6 +14,9 @@ typedef void (*notify)(enum listener_event_type type);
|
||||
int
|
||||
listener_add(notify notify_cb);
|
||||
|
||||
int
|
||||
listener_remove(notify notify_cb);
|
||||
|
||||
int
|
||||
listener_notify(enum listener_event_type type);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user