John Bowler 
							
						 
					 
					
						
						
						
						
							
						
						
							175a126a1a 
							
						 
					 
					
						
						
							
							Simplified API: write-to-memory, overflow handling  
						
						... 
						
						
						
						This implements an API and provides a number of assist macros to allow an
application which uses the simplified API write to bypass stdio and write
directly to memory.
It also includes some warnings (png.h) and some check code to detect *possible*
overflow in the ROW_STRIDE and simplified image SIZE macros.  This disallows
image width/height/format that *might* overflow.  A quiet API change that limits
in-memory image size (uncompressed) to less that 4GByte and image row size
(stride) to less than 2GByte.
Signed-off-by: John Bowler <jbowler@acm.org> 
						
						
					 
					
						2016-01-18 09:53:38 -08:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							4d8de33979 
							
						 
					 
					
						
						
							
							[libpng16] Update copyright uears in source files.  
						
						
						
						
					 
					
						2015-12-13 22:41:17 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							415d26805a 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.19.tar  
						
						
						
						
					 
					
						2015-11-12 07:13:31 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							81f44665cc 
							
						 
					 
					
						
						
							
							[libpng16] Reject attempt to write over-length PLTE chunk  
						
						
						
						
					 
					
						2015-10-29 09:26:41 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							01a0e8062d 
							
						 
					 
					
						
						
							
							[libpng16] Reverted addition of png_set_filler_16 and png_set_add_alpha_16()  
						
						... 
						
						
						
						functions. They unnecessarily duplicate png_set_filler() and png_set_add_alpha()
which now work properly with 16-bit images. 
						
						
					 
					
						2015-09-24 22:39:53 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							efe4e5d10d 
							
						 
					 
					
						
						
							
							[libpng16] Reverted the fix of byte order in png_do_read_filler() with 16-bit  
						
						... 
						
						
						
						input that was made in version 1.6.17beta01, to preserve legacy
behavior even though it was incorrect.  Instead, added new API
png_set_filter_16() and png_set_add_alpha_16() that set a flag to
make png_do_read_filter() interpret the filler bytes properly. 
						
						
					 
					
						2015-09-23 22:08:04 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							a8242fe6fb 
							
						 
					 
					
						
						
							
							[libng16] Reverted recent mistaken change of 0xnnnn to 0xnnnnUL  
						
						
						
						
					 
					
						2015-08-17 20:46:27 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							268c7bf68b 
							
						 
					 
					
						
						
							
							[libpng16] Use unsigned hex constants in "reciprocal" computations  
						
						
						
						
					 
					
						2015-08-17 12:40:19 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							8ba4b13c55 
							
						 
					 
					
						
						
							
							[libpng16] Changed 0xnnnn constants to 0xnnnnUL.  
						
						
						
						
					 
					
						2015-08-16 22:49:58 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							8b83ff3704 
							
						 
					 
					
						
						
							
							[libpng16] Change "n bit" to "n-bit" in comments.  
						
						
						
						
					 
					
						2015-08-13 20:57:18 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							e6172809bd 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.18.tar  
						
						
						
						
					 
					
						2015-07-22 22:40:52 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							f86720c6c0 
							
						 
					 
					
						
						
							
							[libpng16] Fix some indentation.  
						
						
						
						
					 
					
						2015-06-11 22:00:14 -05:00 
						 
				 
			
				
					
						
							
							
								John Bowler 
							
						 
					 
					
						
						
						
						
							
						
						
							7023d871e8 
							
						 
					 
					
						
						
							
							[libpng16] Fix g++ build breaks  
						
						
						
						
					 
					
						2015-06-03 15:04:03 -05:00 
						 
				 
			
				
					
						
							
							
								John Bowler 
							
						 
					 
					
						
						
						
						
							
						
						
							2dfcf65981 
							
						 
					 
					
						
						
							
							[libpng16] Fixed NO_WRITE_FILTER and -Wconversion build breaks (John Bowler).  
						
						
						
						
					 
					
						2015-06-03 14:58:18 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							89edbf8317 
							
						 
					 
					
						
						
							
							[libpng16] Removed WRITE_WEIGHTED_FILTERED code, to save a few kbytes of the  
						
						... 
						
						
						
						compiled library size. It never worked properly and as far as we can
tell, no one uses it. The png_set_filter_heuristics() and
png_set_filter_heuristics_fixed() APIs are retained but deprecated
and do nothing. 
						
						
					 
					
						2015-05-31 22:40:36 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							20a2f9b9be 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.18beta05.tar  
						
						
						
						
					 
					
						2015-05-31 10:20:13 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							e6877671f1 
							
						 
					 
					
						
						
							
							[libpng16] Backported filter selection code from libpng-1.7.0beta51, to combine  
						
						... 
						
						
						
						sub_row, up_row, avg_row, and paeth_row into try_row and tst_row. 
						
						
					 
					
						2015-05-30 11:54:45 -05:00 
						 
				 
			
				
					
						
							
							
								John Bowler 
							
						 
					 
					
						
						
						
						
							
						
						
							8ee821e69a 
							
						 
					 
					
						
						
							
							[libpng16] PNG_RELEASE_BUILD replaces tests where the code depended on the build base  
						
						... 
						
						
						
						type and can be defined on the command line, allowing testing in beta builds. Back
ported from libpng17. 
						
						
					 
					
						2015-05-06 20:03:14 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							d8d18fbb02 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.18beta03.tar  
						
						
						
						
					 
					
						2015-05-06 16:39:31 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							c98f7fb4e3 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.17.tar  
						
						
						
						
					 
					
						2015-03-26 08:11:12 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							c5370ede95 
							
						 
					 
					
						
						
							
							[libpng16] Reverted "& 0xff" additions of version 1.6.17beta01. Libpng passes  
						
						... 
						
						
						
						the Coverity scan without them. 
						
						
					 
					
						2015-03-21 11:54:32 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							3e0bef6da4 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.17rc01.tar  
						
						
						
						
					 
					
						2015-03-04 11:19:32 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							4029db9aac 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.17beta06.tar  
						
						
						
						
					 
					
						2015-02-27 19:01:02 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							7011a8cec3 
							
						 
					 
					
						
						
							
							[libpng16] Added "& 0xff" to things being typecast to "png_byte".  
						
						
						
						
					 
					
						2015-02-27 18:53:44 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							c6b29ff896 
							
						 
					 
					
						
						
							
							[libpng16]  Put #ifdef/#endif around png_set_compression_level in pngwrite.c  
						
						
						
						
					 
					
						2015-02-22 19:39:17 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							d3ff44f0d5 
							
						 
					 
					
						
						
							
							[libpng16] Added PNG_WRITE_CUSTOMIZE_COMPRESSION_SUPPORTED macro, on by default.  
						
						
						
						
					 
					
						2015-02-17 21:06:23 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							e8ef689cb9 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.15.tar  
						
						
						
						
					 
					
						2014-11-20 10:22:57 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							cda68df8c1 
							
						 
					 
					
						
						
							
							[libpng16] Changed "#endif /* PNG_FEATURE_SUPPORTED */" to "#endif /* FEATURE */"  
						
						
						
						
					 
					
						2014-11-06 22:11:39 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							b963feeec6 
							
						 
					 
					
						
						
							
							[libpng16] More cosmetic changes  
						
						
						
						
					 
					
						2014-11-01 13:18:36 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							f2d4167fee 
							
						 
					 
					
						
						
							
							[libpng16] Added a pair of parentheses suggested by clang  
						
						
						
						
					 
					
						2014-10-31 21:17:11 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							5d713fe123 
							
						 
					 
					
						
						
							
							[libpng16] Changed remaining "if (!x)" to "if (x == 0)" and "if (x)" to  
						
						... 
						
						
						
						"if (x !== 0)" 
						
						
					 
					
						2014-10-31 20:58:40 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							c6a8cb7d10 
							
						 
					 
					
						
						
							
							[libpng16] Added missing "ptr = NULL" after some instances of png_free().  
						
						
						
						
					 
					
						2014-10-29 08:27:34 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							ebba0746bc 
							
						 
					 
					
						
						
							
							[libpng16] Changed "if (!x)" to "if (x == 0)" and "if (x)" to "if (x !== 0)"  
						
						
						
						
					 
					
						2014-10-25 12:22:39 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							edb772fd6d 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.14.tar  
						
						
						
						
					 
					
						2014-10-22 19:32:52 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							470d64c2dd 
							
						 
					 
					
						
						
							
							[libpng16] Also don't mark text as written in the end_ptr until written.  
						
						
						
						
					 
					
						2014-10-05 18:08:39 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							a11cd84160 
							
						 
					 
					
						
						
							
							[libpng16] Only mark text chunks as written after successfully writing them.  
						
						
						
						
					 
					
						2014-10-05 13:45:38 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							d752225d05 
							
						 
					 
					
						
						
							
							[libpng16] Removed "text_len" parameter from private function png_write_zTXt()  
						
						... 
						
						
						
						since it is unused. 
						
						
					 
					
						2014-10-03 17:11:50 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							212fd5745d 
							
						 
					 
					
						
						
							
							[libpng16] Bump version to 1.6.13beta01  
						
						
						
						
					 
					
						2014-06-11 21:13:33 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							e429c66cea 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.12.tar  
						
						
						
						
					 
					
						2014-06-11 20:41:51 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							da7b692ce0 
							
						 
					 
					
						
						
							
							[libpng16] Bump version to 1.6.12beta01  
						
						
						
						
					 
					
						2014-06-06 11:57:30 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							c4e0f3de64 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.11.tar  
						
						
						
						
					 
					
						2014-06-05 10:00:45 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							149eea29b6 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.11beta01.tar  
						
						
						
						
					 
					
						2014-03-17 13:19:41 -05:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							05670156f3 
							
						 
					 
					
						
						
							
							[libpng16] Use "if (value != 0)" instead of "if (value)" consistently.  
						
						
						
						
					 
					
						2014-03-08 12:39:52 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							71d23c4d6e 
							
						 
					 
					
						
						
							
							[libpng16] Bump version to 1.6.11beta01  
						
						
						
						
					 
					
						2014-03-06 21:09:24 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							4df37bfa4f 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.10.tar  
						
						
						
						
					 
					
						2014-03-06 12:49:17 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							9eec159ab0 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.10beta01.tar  
						
						
						
						
					 
					
						2014-02-09 13:00:23 -06:00 
						 
				 
			
				
					
						
							
							
								John Bowler 
							
						 
					 
					
						
						
						
						
							
						
						
							414d7b5f7d 
							
						 
					 
					
						
						
							
							[libpng16] Backport recent changes from libpng-1.7.0beta30 and beta31.  
						
						
						
						
					 
					
						2014-02-06 11:39:25 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							3e753eb8b2 
							
						 
					 
					
						
						
							
							[libpng16] Imported from libpng-1.6.9.tar  
						
						
						
						
					 
					
						2014-02-05 22:33:56 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							95a197397f 
							
						 
					 
					
						
						
							
							[libpng16] Updated copyright year in recently-changed files.  
						
						
						
						
					 
					
						2013-12-31 21:10:13 -06:00 
						 
				 
			
				
					
						
							
							
								Glenn Randers-Pehrson 
							
						 
					 
					
						
						
						
						
							
						
						
							38f49403bd 
							
						 
					 
					
						
						
							
							[libpng16] Update "last changed" dates in recently-patched files.  
						
						
						
						
					 
					
						2013-12-22 15:04:00 -06:00