16 lines
		
	
	
		
			816 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			16 lines
		
	
	
		
			816 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
diff -r 5d581cd9e075 IMG_xcf.c
 | 
						|
--- a/IMG_xcf.c	Sun Oct 25 23:55:10 2020 +0300
 | 
						|
+++ b/IMG_xcf.c	Mon Oct 26 23:25:39 2020 +0100
 | 
						|
@@ -336,7 +336,10 @@
 | 
						|
   h->width       = SDL_ReadBE32 (src);
 | 
						|
   h->height      = SDL_ReadBE32 (src);
 | 
						|
   h->image_type  = SDL_ReadBE32 (src);
 | 
						|
-  h->file_version = (h->sign[10] - '0') * 100 + (h->sign[11] - '0') * 10 + (h->sign[12] - '0');
 | 
						|
+  if (h->sign[9] == 'v' && h->sign[10] >= '0' && h->sign[10] <= '9' && h->sign[11] >= '0' && h->sign[11] <= '9' && h->sign[12] >= '0' && h->sign[12] <= '9')
 | 
						|
+    h->file_version = (h->sign[10] - '0') * 100 + (h->sign[11] - '0') * 10 + (h->sign[12] - '0');
 | 
						|
+  else
 | 
						|
+    h->file_version = 0;
 | 
						|
 #ifdef DEBUG
 | 
						|
   printf ("XCF signature : %.14s (version %u)\n", h->sign, h->file_version);
 | 
						|
   printf (" (%u,%u) type=%u\n", h->width, h->height, h->image_type);
 |