This is basically a complete rollback of r155401, as it was determined that

it would be best to maintain API compatibility.  Instead, this commit introduces
ao2_callback_data() which is functionally identical to ao2_callback() except
that it allows you to pass arbitrary data to the callback.

Reviewed by Mark Michelson via ReviewBoard:
	http://reviewboard.digium.com/r/64


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@158959 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Sean Bright
2008-11-25 01:01:49 +00:00
parent 69d85eaca9
commit fd8caa1778
16 changed files with 236 additions and 145 deletions

View File

@@ -80,7 +80,7 @@ static int timerfd_timer_hash(const void *obj, const int flags)
return timer->handle;
}
static int timerfd_timer_cmp(void *obj, void *args, void *data, int flags)
static int timerfd_timer_cmp(void *obj, void *args, int flags)
{
struct timerfd_timer *timer1 = obj, *timer2 = args;
return timer1->handle == timer2->handle ? CMP_MATCH | CMP_STOP : 0;
@@ -120,7 +120,7 @@ static void timerfd_timer_close(int handle)
.handle = handle,
};
if (!(our_timer = ao2_find(timerfd_timers, &find_helper, NULL, OBJ_POINTER))) {
if (!(our_timer = ao2_find(timerfd_timers, &find_helper, OBJ_POINTER))) {
ast_log(LOG_ERROR, "Couldn't find timer with handle %d\n", handle);
return;
}
@@ -172,7 +172,7 @@ static int timerfd_timer_enable_continuous(int handle)
.handle = handle,
};
if (!(our_timer = ao2_find(timerfd_timers, &find_helper, NULL, OBJ_POINTER))) {
if (!(our_timer = ao2_find(timerfd_timers, &find_helper, OBJ_POINTER))) {
ast_log(LOG_ERROR, "Couldn't find timer with handle %d\n", handle);
return -1;
}
@@ -198,7 +198,7 @@ static int timerfd_timer_disable_continuous(int handle)
.handle = handle,
};
if (!(our_timer = ao2_find(timerfd_timers, &find_helper, NULL, OBJ_POINTER))) {
if (!(our_timer = ao2_find(timerfd_timers, &find_helper, OBJ_POINTER))) {
ast_log(LOG_ERROR, "Couldn't find timer with handle %d\n", handle);
return -1;
}
@@ -225,7 +225,7 @@ static enum ast_timing_event timerfd_timer_get_event(int handle)
.handle = handle,
};
if (!(our_timer = ao2_find(timerfd_timers, &find_helper, NULL, OBJ_POINTER))) {
if (!(our_timer = ao2_find(timerfd_timers, &find_helper, OBJ_POINTER))) {
ast_log(LOG_ERROR, "Couldn't find timer with handle %d\n", handle);
return -1;
}