X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=src%2Fvoicetarget.c;h=742afdbc0e59837fe6eb8f811a492a1365e6d999;hb=bc7bbbdfcc9933129d7838224cdef3983ce53c26;hp=3a8e0fd4eab353b19e601fbfdb1fdb49c566d86d;hpb=325121a3901e190678f120d5b704ced4aff8cf7a;p=umurmur.git diff --git a/src/voicetarget.c b/src/voicetarget.c index 3a8e0fd..742afdb 100644 --- a/src/voicetarget.c +++ b/src/voicetarget.c @@ -1,5 +1,5 @@ -/* Copyright (C) 2009, Martin Johansson - Copyright (C) 2005-2009, Thorvald Natvig +/* Copyright (C) 2009-2012, Martin Johansson + Copyright (C) 2005-2012, Thorvald Natvig All rights reserved. @@ -29,6 +29,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include +#include #include "voicetarget.h" #include "log.h" @@ -52,7 +54,8 @@ void Voicetarget_add_session(client_t *client, int targetId, int sessionId) } } -void Voicetarget_add_channel(client_t *client, int targetId, int channelId) +void Voicetarget_add_channel(client_t *client, int targetId, int channelId, + bool_t linked, bool_t children) { struct dlist *itr; voicetarget_t *vt; @@ -62,8 +65,10 @@ void Voicetarget_add_channel(client_t *client, int targetId, int channelId) int i; vt = list_get_entry(itr, voicetarget_t, node); for (i = 0; i < TARGET_MAX_CHANNELS; i++) { - if (vt->channels[i] == -1) { - vt->channels[i] = channelId; + if (vt->channels[i].channel == -1) { + vt->channels[i].channel = channelId; + vt->channels[i].linked = linked; + vt->channels[i].children = children; Log_debug("Adding channel ID %d to voicetarget ID %d", channelId, targetId); return; } @@ -83,7 +88,7 @@ void Voicetarget_add_id(client_t *client, int targetId) Log_fatal("Out of memory"); memset(newtarget, 0, sizeof(voicetarget_t)); for (i = 0; i < TARGET_MAX_CHANNELS; i++) - newtarget->channels[i] = -1; + newtarget->channels[i].channel = -1; for (i = 0; i < TARGET_MAX_SESSIONS; i++) newtarget->sessions[i] = -1; newtarget->id = targetId;