diff options
author | Thomas Hellström <totte67@users.sourceforge.net> | 2004-11-13 19:32:51 +0000 |
---|---|---|
committer | Thomas Hellström <totte67@users.sourceforge.net> | 2004-11-13 19:32:51 +0000 |
commit | a213a237d17cd0fb00611fe56380a94e3b675638 (patch) | |
tree | fe2becd5ec1174361acf90e0977c8bd4f5c1690c /src/libmpeg2/slice_xvmc_vld.c | |
parent | c6a1bafda333d15e7b5559cc085200a3c930a13c (diff) | |
download | xine-lib-a213a237d17cd0fb00611fe56380a94e3b675638.tar.gz xine-lib-a213a237d17cd0fb00611fe56380a94e3b675638.tar.bz2 |
Fixed segfault when seeking with the "xvmc" and "xxmc" plugins playing
files with IDCT / mocomp XvMC acceleration.
Cleaned up some ugly xvmc / xxmc naming.
CVS patchset: 7122
CVS date: 2004/11/13 19:32:51
Diffstat (limited to 'src/libmpeg2/slice_xvmc_vld.c')
-rw-r--r-- | src/libmpeg2/slice_xvmc_vld.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/libmpeg2/slice_xvmc_vld.c b/src/libmpeg2/slice_xvmc_vld.c index 3da94237b..006aea275 100644 --- a/src/libmpeg2/slice_xvmc_vld.c +++ b/src/libmpeg2/slice_xvmc_vld.c @@ -21,7 +21,7 @@ #include "video_out.h" #include "mpeg2.h" #include "mpeg2_internal.h" -#include "xxmc.h" +#include "xvmc_vld.h" static uint8_t zig_zag_scan[64] ATTR_ALIGN(16) = { @@ -117,10 +117,10 @@ void mpeg2_xxmc_slice( mpeg2dec_t *mpeg2dec, picture_t *picture, int code, */ if (picture->second_field) { - mpeg2dec->xxmc_last_slice_code = (xxmc->decoded) ? 0 : -1; + mpeg2dec->xvmc_last_slice_code = (xxmc->decoded) ? 0 : -1; xxmc->decoded = 0; } else { - mpeg2dec->xxmc_last_slice_code = 0; + mpeg2dec->xvmc_last_slice_code = 0; } mb_frame_height = @@ -188,11 +188,11 @@ void mpeg2_xxmc_slice( mpeg2dec_t *mpeg2dec, picture_t *picture, int code, xxmc->proc_xxmc_begin( frame ); if (xxmc->result != 0) { xxmc->proc_xxmc_flush( frame ); - mpeg2dec->xxmc_last_slice_code=-1; + mpeg2dec->xvmc_last_slice_code=-1; } } - if ((code == mpeg2dec->xxmc_last_slice_code + 1) && + if ((code == mpeg2dec->xvmc_last_slice_code + 1) && code <= mpeg2dec->xxmc_mb_pic_height) { /* @@ -208,7 +208,7 @@ void mpeg2_xxmc_slice( mpeg2dec_t *mpeg2dec, picture_t *picture, int code, xxmc->proc_xxmc_slice( frame ); if (xxmc->result != 0) { xxmc->proc_xxmc_flush( frame ); - mpeg2dec->xxmc_last_slice_code=-1; + mpeg2dec->xvmc_last_slice_code=-1; return; } @@ -228,7 +228,7 @@ void mpeg2_xxmc_slice( mpeg2dec_t *mpeg2dec, picture_t *picture, int code, * Keep track of slices. */ - mpeg2dec->xxmc_last_slice_code++; + mpeg2dec->xvmc_last_slice_code++; } } else { @@ -238,7 +238,7 @@ void mpeg2_xxmc_slice( mpeg2dec_t *mpeg2dec, picture_t *picture, int code, */ lprintf("libmpeg2: VLD XvMC: Slice error.\n"); - mpeg2dec->xxmc_last_slice_code = -1; + mpeg2dec->xvmc_last_slice_code = -1; xxmc->proc_xxmc_flush( frame ); return; } @@ -252,14 +252,14 @@ void mpeg2_xxmc_vld_frame_complete(mpeg2dec_t *mpeg2dec, picture_t *picture, int *xxmc = (xine_xxmc_t *) frame->accel_data; if (xxmc->decoded) return; - if (mpeg2dec->xxmc_last_slice_code >= 1) { + if (mpeg2dec->xvmc_last_slice_code >= 1) { xxmc->proc_xxmc_flush( frame ); if (xxmc->result) { - mpeg2dec->xxmc_last_slice_code=-1; + mpeg2dec->xvmc_last_slice_code=-1; return; } xxmc->decoded = 1; - mpeg2dec->xxmc_last_slice_code++; + mpeg2dec->xvmc_last_slice_code++; if (picture->picture_structure == 3 || picture->second_field) { if (xxmc->result == 0) frame->bad_frame = 0; |