- mainloop_gettime(&(val.it_value));
- if(TIMEVAL_LATER((queue)->when, val.it_value)){
- if(queue->when.tv_usec<val.it_value.tv_usec){
- queue->when.tv_usec+=USECS_IN_SEC;
- queue->when.tv_sec--;
+ mainloop_gettime(tv);
+ if(TIMEVAL_LATER((queue)->when, (*tv))){
+ if(queue->when.tv_usec<tv->tv_usec){
+ tv->tv_usec=(queue->when.tv_usec+USECS_IN_SEC)-tv->tv_usec;
+ /* TIMEVAL_LATER ensures >= 0 */
+ tv->tv_sec=(queue->when.tv_sec-1)-tv->tv_sec;
+ }else{
+ tv->tv_usec=queue->when.tv_usec-tv->tv_usec;
+ tv->tv_sec=queue->when.tv_sec-tv->tv_sec;