summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorphintuka <phintuka>2012-03-07 07:56:02 +0000
committerphintuka <phintuka>2012-03-07 07:56:02 +0000
commit0251a79c19f56a44bafb7025ae8e2569bf915272 (patch)
tree854783d65c61db1ef8a89514a96f26fc75b4d8d9
parentdb1f28b2d4ca9af065468505bd7ca692e260d00a (diff)
downloadxineliboutput-0251a79c19f56a44bafb7025ae8e2569bf915272.tar.gz
xineliboutput-0251a79c19f56a44bafb7025ae8e2569bf915272.tar.bz2
Workaround for segfaults when using audio visualization post plugins
(Thanks to Anssi Hannula and Tobias Grimm)
-rw-r--r--xine/xvdr_metronom.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/xine/xvdr_metronom.c b/xine/xvdr_metronom.c
index 38c09cec..81d2e287 100644
--- a/xine/xvdr_metronom.c
+++ b/xine/xvdr_metronom.c
@@ -4,7 +4,7 @@
* See the main source file 'xineliboutput.c' for copyright information and
* how to reach the author.
*
- * $Id: xvdr_metronom.c,v 1.16 2012-01-16 12:28:50 phintuka Exp $
+ * $Id: xvdr_metronom.c,v 1.17 2012-03-07 07:56:02 phintuka Exp $
*
*/
@@ -20,12 +20,22 @@
#define XVDR_METRONOM_COMPILE
#include "xvdr_metronom.h"
+static int warnings = 0;
static void got_video_frame(metronom_t *metronom, vo_frame_t *frame)
{
xvdr_metronom_t *this = (xvdr_metronom_t *)metronom;
int64_t pts = frame->pts;
+#if 1 /* xine-lib master-slave metronom causes some problems ... */
+ if (metronom->got_video_frame != got_video_frame) {
+ if (!warnings++)
+ LOGMSG("got_video_frame: invalid object");
+ return;
+ }
+ warnings = 0;
+#endif
+
this->video_frames++;
if (this->frame_decoded)