diff options
Diffstat (limited to 'vlc/build/schroedinger-1.0.6-fixes.patch')
-rw-r--r-- | vlc/build/schroedinger-1.0.6-fixes.patch | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/vlc/build/schroedinger-1.0.6-fixes.patch b/vlc/build/schroedinger-1.0.6-fixes.patch new file mode 100644 index 00000000..85215e48 --- /dev/null +++ b/vlc/build/schroedinger-1.0.6-fixes.patch @@ -0,0 +1,98 @@ +diff --git a/schroedinger/schroasync-win32.c b/schroedinger/schroasync-win32.c +index 0912e81..3bf2fb0 100644 +--- a/schroedinger/schroasync-win32.c ++++ b/schroedinger/schroasync-win32.c +@@ -166,8 +166,8 @@ void + schro_async_start (SchroAsync *async) + { + int i; +- for(i=0;i<async->n_threads) { +- SetEvent (async->thread_event); ++ for(i=0;i<async->n_threads;i++) { ++ SetEvent (async->threads[i].event); + } + } + +@@ -332,7 +332,7 @@ schro_thread_main (void *ptr) + * a lot of unnecessary wakeups in some cases. */ + { + int i; +- for(i=0;i<async->n_threads) { ++ for(i=0;i<async->n_threads;i++) { + SetEvent (async->thread_event); + } + } +diff --git a/schroedinger/schrodecoder.c b/schroedinger/schrodecoder.c +index d915c34..1ca348e 100644 +--- a/schroedinger/schrodecoder.c ++++ b/schroedinger/schrodecoder.c +@@ -683,6 +683,7 @@ schro_decoder_pull (SchroDecoder *decoder) + { + SchroDecoderInstance *instance = decoder->instance; + SchroPicture *picture = NULL; ++ SchroPictureNumber picture_number; + SchroFrame *frame; + + schro_async_lock (decoder->async); +@@ -697,12 +698,12 @@ schro_decoder_pull (SchroDecoder *decoder) + + /* XXX would be nice to warn if expected picture not present */ + frame = schro_frame_ref (picture->output_picture); ++ picture_number = picture->picture_number; + schro_picture_unref (picture); + + if (schro_decoder_frame_is_twofield (instance, frame)) do { + /* only consider the 2nd field if it can reference + * picture->output_picture, ie frame is twofields */ +- SchroPictureNumber picture_number = picture->picture_number; + if (picture_number&1) { + /* The following is voilated: + * - 10.4p3 earliest field in each frame shall have an even picture number +diff --git a/testsuite/motion.c b/testsuite/motion.c +index 9c52683..60e5739 100644 +--- a/testsuite/motion.c ++++ b/testsuite/motion.c +@@ -13,24 +13,6 @@ + #define OIL_ENABLE_UNSTABLE_API + #include <liboil/liboilprofile.h> + +-void +-schro_frame_data_clear (SchroFrameData *fd) +-{ +- int i; +- for(i=0;i<fd->height;i++){ +- memset (SCHRO_FRAME_DATA_GET_LINE (fd, i), 0, fd->width); +- } +- +-} +- +-void +-schro_frame_clear (SchroFrame *frame) +-{ +- schro_frame_data_clear (frame->components + 0); +- schro_frame_data_clear (frame->components + 1); +- schro_frame_data_clear (frame->components + 2); +-} +- + int + main (int argc, char *argv[]) + { +diff --git a/testsuite/motion2.c b/testsuite/motion2.c +index e90ff70..c6f4cc7 100644 +--- a/testsuite/motion2.c ++++ b/testsuite/motion2.c +@@ -15,14 +15,6 @@ + #include <liboil/liboilrandom.h> + + void +-schro_frame_clear (SchroFrame *frame) +-{ +- memset(frame->components[0].data, 0, frame->components[0].length); +- memset(frame->components[1].data, 0, frame->components[1].length); +- memset(frame->components[2].data, 0, frame->components[2].length); +-} +- +-void + schro_frame_create_pattern (SchroFrame *frame, int type) + { + int i,j,k; |