From 4fa256398c3514aeefdd92137fa455cb6a7e61dd Mon Sep 17 00:00:00 2001 From: Thomas Bernard Date: Fri, 29 Nov 2019 01:03:45 +0100 Subject: [PATCH] add function Get_image_mode() just as there is Set_image_mode() --- src/loadsave.c | 5 +++++ src/loadsave.h | 2 ++ src/miscfileformats.c | 2 +- src/tests/mockloadsave.c | 5 +++++ 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/loadsave.c b/src/loadsave.c index c7d983e0..81c4adb7 100644 --- a/src/loadsave.c +++ b/src/loadsave.c @@ -360,6 +360,11 @@ void Set_image_mode(T_IO_Context *context, enum IMAGE_MODES mode) } } +enum IMAGE_MODES Get_image_mode(T_IO_Context *context) +{ + return Main.backups->Pages->Image_mode; +} + /// /// Generic allocation and similar stuff, done at beginning of image load, /// as soon as size is known. diff --git a/src/loadsave.h b/src/loadsave.h index c94b70ca..20578bc7 100644 --- a/src/loadsave.h +++ b/src/loadsave.h @@ -229,6 +229,8 @@ void Set_frame_duration(T_IO_Context *context, int duration); int Get_frame_duration(T_IO_Context *context); /// Function to set a specific image mode void Set_image_mode(T_IO_Context *context, enum IMAGE_MODES mode); +/// get the current image mode +enum IMAGE_MODES Get_image_mode(T_IO_Context *context); // ================================================================= // What follows here are the definitions of functions and data diff --git a/src/miscfileformats.c b/src/miscfileformats.c index b0c44d41..af70dbb7 100644 --- a/src/miscfileformats.c +++ b/src/miscfileformats.c @@ -5768,7 +5768,7 @@ void Load_FLI(T_IO_Context * context) else { Set_loading_layer(context, current_frame); - if (context->Type == CONTEXT_MAIN_IMAGE && Main.backups->Pages->Image_mode == IMAGE_MODE_ANIMATION) + if (context->Type == CONTEXT_MAIN_IMAGE && Get_image_mode(context) == IMAGE_MODE_ANIMATION) { // Copy the content of previous frame memcpy( diff --git a/src/tests/mockloadsave.c b/src/tests/mockloadsave.c index 4f5eb335..5ef04d3d 100644 --- a/src/tests/mockloadsave.c +++ b/src/tests/mockloadsave.c @@ -84,6 +84,11 @@ void Set_image_mode(T_IO_Context *context, enum IMAGE_MODES mode) printf("Set_image_mode(%p, %d)\n", context, mode); } +enum IMAGE_MODES Get_image_mode(T_IO_Context *context) +{ + return -1; +} + void Set_frame_duration(T_IO_Context *context, int duration) { printf("Set_frame_duration(%p, %d)\n", context, duration);