From: Howard Chu Date: Fri, 22 Apr 2005 14:37:59 +0000 (+0000) Subject: Change ldap_pvt_runqueue_insert to return new task pointer X-Git-Tag: OPENLDAP_AC_BP~834 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=2dec29f265c8a5bd7ecb7b13ccb3e5580edde64e;p=openldap Change ldap_pvt_runqueue_insert to return new task pointer --- diff --git a/include/ldap_rq.h b/include/ldap_rq.h index 551a1eada7..4fc9c072bb 100644 --- a/include/ldap_rq.h +++ b/include/ldap_rq.h @@ -35,7 +35,7 @@ typedef struct runqueue_s { ldap_pvt_thread_mutex_t rq_mutex; } runqueue_t; -LDAP_F( void ) +LDAP_F( struct re_s* ) ldap_pvt_runqueue_insert( struct runqueue_s* rq, time_t interval, diff --git a/libraries/libldap_r/rq.c b/libraries/libldap_r/rq.c index bafb12166d..adfaea5641 100644 --- a/libraries/libldap_r/rq.c +++ b/libraries/libldap_r/rq.c @@ -33,7 +33,7 @@ #include "ldap_queue.h" #include "ldap_rq.h" -void +struct re_s * ldap_pvt_runqueue_insert( struct runqueue_s* rq, time_t interval, @@ -44,13 +44,16 @@ ldap_pvt_runqueue_insert( struct re_s* entry; entry = (struct re_s *) LDAP_CALLOC( 1, sizeof( struct re_s )); - entry->interval.tv_sec = interval; - entry->interval.tv_usec = 0; - entry->next_sched.tv_sec = time( NULL ); - entry->next_sched.tv_usec = 0; - entry->routine = routine; - entry->arg = arg; - LDAP_STAILQ_INSERT_TAIL( &rq->task_list, entry, tnext ); + if ( entry ) { + entry->interval.tv_sec = interval; + entry->interval.tv_usec = 0; + entry->next_sched.tv_sec = time( NULL ); + entry->next_sched.tv_usec = 0; + entry->routine = routine; + entry->arg = arg; + LDAP_STAILQ_INSERT_TAIL( &rq->task_list, entry, tnext ); + } + return entry; } struct re_s *