+++ /dev/null
---- liboil-0.3.15/liboil/Makefile.in 2008-07-01 04:46:08.000000000 +0000
-+++ liboil/liboil/Makefile.in 2008-07-04 23:09:27.518585545 +0000
-@@ -1207,25 +1207,30 @@
-
-
- liboilarray.c: liboiltmp1.la Makefile
-+ ../libtool --config > .libs/libtoolcfg
- echo '/* This file is autogenerated. Do not edit */' >liboilarray.c.tmp
- echo >>liboilarray.c.tmp
- echo '#include <liboil/liboilfunction.h>' >>liboilarray.c.tmp
- echo >>liboilarray.c.tmp
-- grep '^_oil_function_class_' .libs/liboiltmp1.exp | \
-- sed -e 's/ .*//' -e 's/.*/extern OilFunctionClass &;/' >>liboilarray.c.tmp
-+ . .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " | \
-+ sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' | grep ^_oil_function_class_ | \
-+ sed -e 's/.*/extern OilFunctionClass &;/' >>liboilarray.c.tmp
- echo >>liboilarray.c.tmp
- echo 'OilFunctionClass *_oil_function_class_array[] = {' >>liboilarray.c.tmp
-- grep '^_oil_function_class_' .libs/liboiltmp1.exp | \
-- sed -e 's/ .*//' -e 's/.*/ \&&,/' >>liboilarray.c.tmp
-+ . .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " | \
-+ sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' | grep ^_oil_function_class_ | \
-+ sed -e 's/.*/ \&&,/' >>liboilarray.c.tmp
- echo ' NULL' >>liboilarray.c.tmp
- echo '};' >>liboilarray.c.tmp
- echo >>liboilarray.c.tmp
-- grep '^_oil_function_impl_' .libs/liboiltmp1.exp | \
-- sed -e 's/ .*//' -e 's/.*/extern OilFunctionImpl &;/' >>liboilarray.c.tmp
-+ . .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " | \
-+ sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' | grep ^_oil_function_impl_ | \
-+ sed -e 's/.*/extern OilFunctionImpl &;/' >>liboilarray.c.tmp
- echo >>liboilarray.c.tmp
- echo 'OilFunctionImpl *_oil_function_impl_array[] = {' >>liboilarray.c.tmp
-- grep '^_oil_function_impl_' .libs/liboiltmp1.exp | \
-- sed -e 's/ .*//' -e 's/.*/ \&&,/' >>liboilarray.c.tmp
-+ . .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " | \
-+ sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' | grep ^_oil_function_impl_ | \
-+ sed -e 's/.*/ \&&,/' >>liboilarray.c.tmp
- echo ' NULL' >>liboilarray.c.tmp
- echo '};' >>liboilarray.c.tmp
- echo >>liboilarray.c.tmp
--- /dev/null
+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;