diff options
author | Dmitrij D. Czarkoff <czarkoff@gmail.com> | 2016-04-26 18:04:15 +0200 |
---|---|---|
committer | Dmitrij D. Czarkoff <czarkoff@gmail.com> | 2016-04-26 18:04:15 +0200 |
commit | 34a37303bfc41a6553afafc690a7fd744a8fd775 (patch) | |
tree | 26bac98b0d45eaa2f9af6aa1d69df83ed2f31c59 | |
parent | b4c14b1932e45edc6e89123bf02465ccd43dca9f (diff) | |
download | imv-34a37303bfc41a6553afafc690a7fd744a8fd775.tar.gz |
Fix reporting image change
Apparently bg_next_frame() functions marked first frames of gifs old before
imv_loader_get_image() had a chance to report them to the main loop. Move
unsetting of ldr->out_is_new_image to imv_loader_get_image().
Fixes #81.
-rw-r--r-- | src/loader.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/loader.c b/src/loader.c index e152d3b..91d0d2f 100644 --- a/src/loader.c +++ b/src/loader.c @@ -102,6 +102,7 @@ int imv_loader_get_image(struct imv_loader *ldr, FIBITMAP **out_bmp, *out_bmp = ldr->out_bmp; ldr->out_bmp = NULL; *out_is_new_image = ldr->out_is_new_image; + ldr->out_is_new_image = 0; ret = 1; } @@ -397,7 +398,6 @@ static void *bg_next_frame(void *data) FreeImage_Unload(ldr->out_bmp); } ldr->out_bmp = FreeImage_Clone(ldr->bmp); - ldr->out_is_new_image = 0; pthread_mutex_unlock(&ldr->lock); return NULL; |