diff options
| author | phintuka <phintuka> | 2012-03-07 07:56:02 +0000 |
|---|---|---|
| committer | phintuka <phintuka> | 2012-03-07 07:56:02 +0000 |
| commit | 0251a79c19f56a44bafb7025ae8e2569bf915272 (patch) | |
| tree | 854783d65c61db1ef8a89514a96f26fc75b4d8d9 | |
| parent | db1f28b2d4ca9af065468505bd7ca692e260d00a (diff) | |
| download | xineliboutput-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.c | 12 |
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) |
