summaryrefslogtreecommitdiff
path: root/src/xine-engine
diff options
context:
space:
mode:
Diffstat (limited to 'src/xine-engine')
-rw-r--r--src/xine-engine/audio_out.c7
-rw-r--r--src/xine-engine/buffer_types.c4
-rw-r--r--src/xine-engine/video_out.c5
3 files changed, 12 insertions, 4 deletions
diff --git a/src/xine-engine/audio_out.c b/src/xine-engine/audio_out.c
index 3a11aa238..6405f6346 100644
--- a/src/xine-engine/audio_out.c
+++ b/src/xine-engine/audio_out.c
@@ -1889,10 +1889,15 @@ static int ao_set_property (xine_audio_port_t *this_gen, int property, int value
case AO_PROP_DISCARD_BUFFERS:
/* recursive discard buffers setting */
+ pthread_mutex_lock(&this->flush_audio_driver_lock);
if(value)
this->discard_buffers++;
- else
+ else if (this->discard_buffers)
this->discard_buffers--;
+ else
+ xprintf (this->xine, XINE_VERBOSITY_DEBUG,
+ "ao_set_property: discard_buffers is already zero\n");
+ pthread_mutex_unlock(&this->flush_audio_driver_lock);
ret = this->discard_buffers;
diff --git a/src/xine-engine/buffer_types.c b/src/xine-engine/buffer_types.c
index 4d4be3a34..413bfb9f0 100644
--- a/src/xine-engine/buffer_types.c
+++ b/src/xine-engine/buffer_types.c
@@ -861,8 +861,8 @@ static const audio_db_t audio_db[] = {
{
0x162, 0
},
- BUF_AUDIO_WMAV3,
- "Windows Media Audio v3"
+ BUF_AUDIO_WMAPRO,
+ "Windows Media Audio Professional"
},
{
{
diff --git a/src/xine-engine/video_out.c b/src/xine-engine/video_out.c
index cc21b441d..e4af36e3c 100644
--- a/src/xine-engine/video_out.c
+++ b/src/xine-engine/video_out.c
@@ -1510,8 +1510,11 @@ static int vo_set_property (xine_video_port_t *this_gen, int property, int value
pthread_mutex_lock(&this->display_img_buf_queue->mutex);
if(value)
this->discard_frames++;
- else
+ else if (this->discard_frames)
this->discard_frames--;
+ else
+ xprintf (this->xine, XINE_VERBOSITY_DEBUG,
+ "vo_set_property: discard_frames is already zero\n");
pthread_mutex_unlock(&this->display_img_buf_queue->mutex);
ret = this->discard_frames;