diff options
Diffstat (limited to 'addons')
-rw-r--r-- | addons/ooh323c/src/ooTimer.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/addons/ooh323c/src/ooTimer.c b/addons/ooh323c/src/ooTimer.c index 56d76f3af..a15421ad2 100644 --- a/addons/ooh323c/src/ooTimer.c +++ b/addons/ooh323c/src/ooTimer.c @@ -17,6 +17,7 @@ #include "asterisk.h" #include "asterisk/lock.h" +#include "ootypes.h" #include "ooDateTime.h" #include "ooTimer.h" #include "ootrace.h" @@ -101,6 +102,7 @@ OOBOOL ooTimerExpired (OOTimer* pTimer) void ooTimerFireExpired (OOCTXT* pctxt, DList *pList) { OOTimer* pTimer; + int ret = OO_OK; while (pList->count > 0) { pTimer = (OOTimer*) pList->head->data; @@ -112,12 +114,16 @@ void ooTimerFireExpired (OOCTXT* pctxt, DList *pList) */ if (pTimer->reRegister) ooTimerReset (pctxt, pList, pTimer); + ret = (*pTimer->timeoutCB)(pTimer->cbData); + if (!pTimer->reRegister) { ooTimerDelete (pctxt, pList, pTimer); } } else break; } + + return (void)ret; } int ooTimerInsertEntry (OOCTXT* pctxt, DList *pList, OOTimer* pTimer) |