X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=src%2Fvoicetarget.c;h=92f8c5bfcc9a30b041a67134b2a1808be835fc4d;hb=b026c5ad0acc4388d05fa4768b75ee8d79403ea4;hp=3a8e0fd4eab353b19e601fbfdb1fdb49c566d86d;hpb=325121a3901e190678f120d5b704ced4aff8cf7a;p=umurmur.git diff --git a/src/voicetarget.c b/src/voicetarget.c index 3a8e0fd..92f8c5b 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-2010, Martin Johansson + Copyright (C) 2005-2010, 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;