mirror of
				https://git.code.sf.net/p/libpng/code.git
				synced 2025-07-10 18:04:09 +02:00 
			
		
		
		
	[devel] Check for up->location !PNG_AFTER_IDAT when writing unknown chunks
before IDAT.
This commit is contained in:
		
							parent
							
								
									2d3fc1ca3b
								
							
						
					
					
						commit
						36fa2a0abd
					
				
							
								
								
									
										2
									
								
								ANNOUNCE
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								ANNOUNCE
									
									
									
									
									
								
							| @ -109,6 +109,8 @@ Version 1.5.3beta07 [May 11, 2011] | ||||
|   Moved macro definitions for PNG_HAVE_IHDR, PNG_HAVE_PLTE, and PNG_AFTER_IDAT | ||||
|     from pngpriv.h to png.h because they must be visible to applications | ||||
|     that call png_set_unknown_chunks(). | ||||
|   Check for up->location !PNG_AFTER_IDAT when writing unknown chunks | ||||
|     before IDAT. | ||||
| 
 | ||||
| Send comments/corrections/commendations to png-mng-implement at lists.sf.net: | ||||
| (subscription required; visit | ||||
|  | ||||
							
								
								
									
										2
									
								
								CHANGES
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								CHANGES
									
									
									
									
									
								
							| @ -3368,6 +3368,8 @@ Version 1.5.3beta07 [May 11, 2011] | ||||
|   Moved macro definitions for PNG_HAVE_IHDR, PNG_HAVE_PLTE, and PNG_AFTER_IDAT | ||||
|     from pngpriv.h to png.h because they must be visible to applications | ||||
|     that call png_set_unknown_chunks(). | ||||
|   Check for up->location !PNG_AFTER_IDAT when writing unknown chunks | ||||
|     before IDAT. | ||||
| 
 | ||||
| Send comments/corrections/commendations to png-mng-implement at lists.sf.net | ||||
| (subscription required; visit | ||||
|  | ||||
							
								
								
									
										11
									
								
								pngwrite.c
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								pngwrite.c
									
									
									
									
									
								
							| @ -99,8 +99,10 @@ png_write_info_before_PLTE(png_structp png_ptr, png_infop info_ptr) | ||||
|          int keep = png_handle_as_unknown(png_ptr, up->name); | ||||
| 
 | ||||
|          if (keep != PNG_HANDLE_CHUNK_NEVER && | ||||
|              up->location && !(up->location & PNG_HAVE_PLTE) && | ||||
|              up->location && | ||||
|              !(up->location & PNG_HAVE_PLTE) && | ||||
|              !(up->location & PNG_HAVE_IDAT) && | ||||
|              !(up->location & PNG_AFTER_IDAT) && | ||||
|              ((up->name[3] & 0x20) || keep == PNG_HANDLE_CHUNK_ALWAYS || | ||||
|              (png_ptr->flags & PNG_FLAG_KEEP_UNSAFE_CHUNKS))) | ||||
|          { | ||||
| @ -273,8 +275,10 @@ png_write_info(png_structp png_ptr, png_infop info_ptr) | ||||
|       { | ||||
|          int keep = png_handle_as_unknown(png_ptr, up->name); | ||||
|          if (keep != PNG_HANDLE_CHUNK_NEVER && | ||||
|              up->location && (up->location & PNG_HAVE_PLTE) && | ||||
|              up->location && | ||||
|              (up->location & PNG_HAVE_PLTE) && | ||||
|              !(up->location & PNG_HAVE_IDAT) && | ||||
|              !(up->location & PNG_AFTER_IDAT) && | ||||
|              ((up->name[3] & 0x20) || keep == PNG_HANDLE_CHUNK_ALWAYS || | ||||
|              (png_ptr->flags & PNG_FLAG_KEEP_UNSAFE_CHUNKS))) | ||||
|          { | ||||
| @ -380,7 +384,8 @@ png_write_end(png_structp png_ptr, png_infop info_ptr) | ||||
|       { | ||||
|          int keep = png_handle_as_unknown(png_ptr, up->name); | ||||
|          if (keep != PNG_HANDLE_CHUNK_NEVER && | ||||
|              up->location && (up->location & PNG_AFTER_IDAT) && | ||||
|              up->location && | ||||
|              (up->location & PNG_AFTER_IDAT) && | ||||
|              ((up->name[3] & 0x20) || keep == PNG_HANDLE_CHUNK_ALWAYS || | ||||
|              (png_ptr->flags & PNG_FLAG_KEEP_UNSAFE_CHUNKS))) | ||||
|          { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Glenn Randers-Pehrson
						Glenn Randers-Pehrson