From e392934afcea257b8b6cc7e5f6bb666b0043cf4e Mon Sep 17 00:00:00 2001 From: David Capello Date: Tue, 22 Aug 2017 09:03:17 -0300 Subject: [PATCH] Add possibility to open broken .ase files on devmode --- src/app/file/ase_format.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/app/file/ase_format.cpp b/src/app/file/ase_format.cpp index a582073a4..cec4ef65b 100644 --- a/src/app/file/ase_format.cpp +++ b/src/app/file/ase_format.cpp @@ -524,8 +524,12 @@ static bool ase_file_read_header(FILE* f, ASE_Header* header) header->size = fgetl(f); header->magic = fgetw(f); + + // Developers can open any .ase file +#if !defined(ENABLE_DEVMODE) if (header->magic != ASE_FILE_MAGIC) return false; +#endif header->frames = fgetw(f); header->width = fgetw(f); @@ -552,6 +556,15 @@ static bool ase_file_read_header(FILE* f, ASE_Header* header) header->pixel_height = 1; } +#if defined(ENABLE_DEVMODE) + // This is useful to read broken .ase files + if (header->magic != ASE_FILE_MAGIC) { + header->frames = 256; // Frames number might be not enought for some files + header->width = 1024; // Size doesn't matter, the sprite can be crop + header->height = 1024; + } +#endif + fseek(f, header->pos+128, SEEK_SET); return true; }