From 79f9c2ddb3b981a164243d7a40f0e98fcd8d15ed Mon Sep 17 00:00:00 2001 From: thlo Date: Sat, 17 Aug 2013 21:41:02 +0200 Subject: Allow creation of partially overlapping timers. --- responsememblk.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) mode change 100644 => 100755 responsememblk.c diff --git a/responsememblk.c b/responsememblk.c old mode 100644 new mode 100755 index cf35dbd..03ee6af --- a/responsememblk.c +++ b/responsememblk.c @@ -888,9 +888,13 @@ void cResponseMemBlk::receiveAddTimerReq() { } } - if (Timers.GetMatch(ev) != NULL) { + // eTimerMatch ma ; + int ma; + if (Timers.GetMatch(ev, &ma) != NULL) { + if(ma == tmFull) { + *(mLog->log())<< DEBUGPREFIX - << " WARING: Timer already created guid= " << guid + << " WARNING: Timer already created guid= " << guid << " and ev_id= " << ev_id << endl; @@ -899,6 +903,7 @@ void cResponseMemBlk::receiveAddTimerReq() { mResponseMessage = NULL; sendError(400, "Bad Request", NULL, "014 Timer already defined."); return; + } } // now, create a new timer @@ -1107,6 +1112,14 @@ void cResponseMemBlk::sendTimersXml() { snprintf(f, sizeof(f), "%s\n", ((ti->HasFlags(tfRecording) )? "true":"false")); *mResponseMessage += f; + if (ti->Event() != NULL) { + snprintf(f, sizeof(f), "%u\n", ti->Event()->EventID()); + *mResponseMessage += f; + } + else + *mResponseMessage += "\n"; + + *mResponseMessage += "\n"; } -- cgit v1.2.3