From 4cb9e690e4b4cf994fc266991bd5a20d534cc96d Mon Sep 17 00:00:00 2001 From: torben Date: Tue, 10 Nov 2009 00:27:54 +0000 Subject: [PATCH] fix signedness issues with deadline_goodness compares. git-svn-id: svn+ssh://jackaudio.org/trunk/jack@3728 0c269be4-1314-0410-8aa9-9f06e86f4224 --- drivers/netjack/netjack.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/drivers/netjack/netjack.c b/drivers/netjack/netjack.c index 347b243..1f9940e 100644 --- a/drivers/netjack/netjack.c +++ b/drivers/netjack/netjack.c @@ -154,7 +154,13 @@ int netjack_wait( netjack_driver_state_t *netj ) // jack_error( "netxrun... %d", netj->expected_framecnt ); if( we_have_the_expected_frame ) { - netj->time_to_deadline = netj->next_deadline - jack_get_time() - netj->period_usecs; + + jack_time_t now = jack_get_time(); + if( now < netj->next_deadline ) + netj->time_to_deadline = netj->next_deadline - now; + else + netj->time_to_deadline = 0; + packet_cache_retreive_packet_pointer( global_packcache, netj->expected_framecnt, (char **) &(netj->rx_buf), netj->rx_bufsize , &packet_recv_time_stamp); pkthdr = (jacknet_packet_header *) netj->rx_buf; packet_header_ntoh(pkthdr); @@ -162,13 +168,13 @@ int netjack_wait( netjack_driver_state_t *netj ) netj->packet_data_valid = 1; if( netj->deadline_goodness != MASTER_FREEWHEELS ) { - if( netj->deadline_goodness < (netj->period_usecs/4+10*(int)netj->period_usecs*netj->latency/100) ) { + if( netj->deadline_goodness < (int)(netj->period_usecs/4+10*(int)netj->period_usecs*netj->latency/100) ) { netj->deadline_offset -= netj->period_usecs/100; - //jack_log( "goodness: %d, Adjust deadline: --- %d\n", netj->deadline_goodness, (int) netj->period_usecs*netj->latency/100 ); + jack_error( "goodness: %d, Adjust deadline: --- %d\n", netj->deadline_goodness, (int) netj->period_usecs*netj->latency/100 ); } - if( netj->deadline_goodness > (netj->period_usecs/4+10*(int)netj->period_usecs*netj->latency/100) ) { + if( netj->deadline_goodness > (int)(netj->period_usecs/4+10*(int)netj->period_usecs*netj->latency/100) ) { netj->deadline_offset += netj->period_usecs/100; - //jack_log( "goodness: %d, Adjust deadline: +++ %d\n", netj->deadline_goodness, (int) netj->period_usecs*netj->latency/100 ); + jack_error( "goodness: %d, Adjust deadline: +++ %d\n", netj->deadline_goodness, (int) netj->period_usecs*netj->latency/100 ); } } if( netj->deadline_offset < (netj->period_usecs*70/100) ) {