There was a race condition here that caused latency calculation to fail
authorPierre Ossman <ossman@cendio.se>
Thu, 5 Jan 2006 19:30:59 +0000 (19:30 +0000)
committerPierre Ossman <ossman@cendio.se>
Thu, 5 Jan 2006 19:30:59 +0000 (19:30 +0000)
miserably under some conditions.

git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/ossman@392 fefdeb5f-60dc-0310-8127-8f9354f1896f

polyp/polyplib-internal.h
polyp/polyplib-stream.c

index d1b3a27..9417430 100644 (file)
@@ -92,7 +92,6 @@ struct pa_stream {
     enum pa_stream_direction direction;
     uint32_t requested_bytes;
     uint64_t counter;
-    pa_usec_t previous_time;
     enum pa_stream_state state;
     struct pa_mcalign *mcalign;
 
index d4480f8..c7c40c0 100644 (file)
@@ -65,7 +65,6 @@ struct pa_stream *pa_stream_new(struct pa_context *c, const char *name, const st
     s->mcalign = pa_mcalign_new(pa_frame_size(ss), c->memblock_stat);
 
     s->counter = 0;
-    s->previous_time = 0;
 
     s->corked = 0;
     s->interpolate = 0;
@@ -698,11 +697,6 @@ pa_usec_t pa_stream_get_time(struct pa_stream *s, const struct pa_latency_info *
         }
     }
 
-    if (usec < s->previous_time)
-        usec = s->previous_time;
-
-    s->previous_time = usec;
-    
     return usec;
 }
 
@@ -762,10 +756,6 @@ pa_usec_t pa_stream_get_interpolated_time(struct pa_stream *s) {
             usec = s->ipol_usec + pa_timeval_age(&s->ipol_timestamp);
     }
     
-    if (usec < s->previous_time)
-        usec = s->previous_time;
-
-    s->previous_time = usec;
     return usec;
 }