Mercurial > mplayer.hg
comparison libmpdemux/tvi_v4l.c @ 8671:e1337452fe62
Obvious patch to avoid undefined behaviour of multiple side effects in
a single expression.
patch by Wolfram Gloger <wmglo@dent.med.uni-muenchen.de>
author | arpi |
---|---|
date | Tue, 31 Dec 2002 02:21:28 +0000 |
parents | cf1d4f48aecf |
children | c9c309ab9891 |
comparison
equal
deleted
inserted
replaced
8670:c5a28d4445cd | 8671:e1337452fe62 |
---|---|
1375 | 1375 |
1376 pthread_mutex_lock(&priv->video_buffer_mutex); | 1376 pthread_mutex_lock(&priv->video_buffer_mutex); |
1377 interval = (double)priv->video_timebuffer[priv->video_head]*1e-6; | 1377 interval = (double)priv->video_timebuffer[priv->video_head]*1e-6; |
1378 memcpy(buffer, priv->video_ringbuffer[priv->video_head], len); | 1378 memcpy(buffer, priv->video_ringbuffer[priv->video_head], len); |
1379 priv->video_cnt--; | 1379 priv->video_cnt--; |
1380 priv->video_head = (++priv->video_head)%priv->video_buffer_size_current; | 1380 priv->video_head = (priv->video_head+1)%priv->video_buffer_size_current; |
1381 pthread_mutex_unlock(&priv->video_buffer_mutex); | 1381 pthread_mutex_unlock(&priv->video_buffer_mutex); |
1382 return interval; | 1382 return interval; |
1383 } | 1383 } |
1384 | 1384 |
1385 static int get_video_framesize(priv_t *priv) | 1385 static int get_video_framesize(priv_t *priv) |
1445 | 1445 |
1446 if ((priv->audio_tail+1) % priv->audio_buffer_size == priv->audio_head) { | 1446 if ((priv->audio_tail+1) % priv->audio_buffer_size == priv->audio_head) { |
1447 mp_msg(MSGT_TV, MSGL_ERR, "\ntoo bad - dropping audio frame !\n"); | 1447 mp_msg(MSGT_TV, MSGL_ERR, "\ntoo bad - dropping audio frame !\n"); |
1448 priv->audio_drop++; | 1448 priv->audio_drop++; |
1449 } else { | 1449 } else { |
1450 priv->audio_tail = (++priv->audio_tail) % priv->audio_buffer_size; | 1450 priv->audio_tail = (priv->audio_tail+1) % priv->audio_buffer_size; |
1451 priv->audio_cnt++; | 1451 priv->audio_cnt++; |
1452 } | 1452 } |
1453 } | 1453 } |
1454 return NULL; | 1454 return NULL; |
1455 } | 1455 } |
1469 | 1469 |
1470 while (priv->audio_head == priv->audio_tail) { | 1470 while (priv->audio_head == priv->audio_tail) { |
1471 usleep(10000); | 1471 usleep(10000); |
1472 } | 1472 } |
1473 memcpy(buffer, priv->audio_ringbuffer+priv->audio_head*priv->audio_in.blocksize, len); | 1473 memcpy(buffer, priv->audio_ringbuffer+priv->audio_head*priv->audio_in.blocksize, len); |
1474 priv->audio_head = (++priv->audio_head) % priv->audio_buffer_size; | 1474 priv->audio_head = (priv->audio_head+1) % priv->audio_buffer_size; |
1475 priv->audio_cnt--; | 1475 priv->audio_cnt--; |
1476 priv->audio_sent_blocks_total++; | 1476 priv->audio_sent_blocks_total++; |
1477 return (double)priv->audio_sent_blocks_total*priv->audio_secs_per_block; | 1477 return (double)priv->audio_sent_blocks_total*priv->audio_secs_per_block; |
1478 } | 1478 } |
1479 | 1479 |