Fix flush order of operations to ensure the correct index is passed to open()
diff --git a/src/read.c b/src/read.c
index 41a20e2..13b40fa 100644
--- a/src/read.c
+++ b/src/read.c
@@ -1561,8 +1561,8 @@
     }
 
     // If we get here, a decoder flush is necessary
-    avifDecoderFlush(decoder);
     decoder->imageIndex = ((int)avifDecoderNearestKeyframe(decoder, frameIndex)) - 1; // prepare to read nearest keyframe
+    avifDecoderFlush(decoder);
     for (;;) {
         avifResult result = avifDecoderNextImage(decoder);
         if (result != AVIF_RESULT_OK) {