src/3rdparty/libtiff/html/v3.9.0beta.html
changeset 30 5dc02b23752f
equal deleted inserted replaced
29:b72c6db6890b 30:5dc02b23752f
       
     1 <HTML>
       
     2 <HEAD>
       
     3 <TITLE>
       
     4 	Changes in TIFF v3.9.0beta
       
     5 </TITLE>
       
     6 </HEAD>
       
     7 
       
     8 <BODY BGCOLOR=white>
       
     9 <FONT FACE="Helvetica, Arial, Sans">
       
    10 <FONT FACE="Helvetica, Arial, Sans"> 
       
    11 
       
    12 <BASEFONT SIZE=4>
       
    13 <B><FONT SIZE=+3>T</FONT>IFF <FONT SIZE=+2>C</FONT>HANGE <FONT SIZE=+2>I</FONT>NFORMATION</B>
       
    14 <BASEFONT SIZE=3>
       
    15 
       
    16 <UL>
       
    17 <HR SIZE=4 WIDTH=65% ALIGN=left>
       
    18 <B>Current Version</B>: v3.9.0beta<BR>
       
    19 <B>Previous Version</B>: <A HREF=v3.8.2.html>v3.8.2</a><BR>
       
    20 <B>Master FTP Site</B>: <A HREF="ftp://ftp.remotesensing.org/pub/libtiff">
       
    21 ftp.remotesensing.org</a>, directory pub/libtiff</A><BR>
       
    22 <B>Master HTTP Site</B>: <A HREF="http://www.remotesensing.org/libtiff">
       
    23 http://www.remotesensing.org/libtiff</a> 
       
    24 <HR SIZE=4 WIDTH=65% ALIGN=left>
       
    25 </UL>
       
    26 
       
    27 <P>
       
    28 This document describes the changes made to the software between the
       
    29 <I>previous</I> and <I>current</I> versions (see above).
       
    30 If you don't find something listed here, then it was not done in this
       
    31 timeframe, or it was not considered important enough to be mentioned.
       
    32 The following information is located here:
       
    33 <UL>
       
    34 <LI><A HREF="#hightlights">Major Changes</A>
       
    35 <LI><A HREF="#configure">Changes in the software configuration</A>
       
    36 <LI><A HREF="#libtiff">Changes in libtiff</A>
       
    37 <LI><A HREF="#tools">Changes in the tools</A>
       
    38 <LI><A HREF="#contrib">Changes in the contrib area</A>
       
    39 </UL>
       
    40 <p> 
       
    41 <P><HR WIDTH=65% ALIGN=left>
       
    42 
       
    43 <!--------------------------------------------------------------------------->
       
    44 
       
    45 <A NAME="highlights"><B><FONT SIZE=+3>M</FONT>AJOR CHANGES:</B></A>
       
    46 
       
    47 <UL>
       
    48 	<li> New <b>tiffcrop</b> utility contributed by Richard Nolde.
       
    49 	<b>tiffcrop</b> does the same as <b>tiffcp</b>, but also can crop,
       
    50 	extract, rotate and mirror images.
       
    51 
       
    52 	<li> tif_jbig.c:  Added	support for JBIG compression scheme
       
    53 	(34661 code), contributed by Lee Howard.
       
    54 
       
    55 	<li> Totally new implementation of OJPEG module from
       
    56 	Joris Van Damme. No need to patch libjpeg anymore. Many OJPEG files
       
    57 	should be supported now that was not supported previously.
       
    58 
       
    59 </UL>
       
    60 
       
    61 
       
    62 <P><HR WIDTH=65% ALIGN=left>
       
    63 <!--------------------------------------------------------------------------->
       
    64 
       
    65 <A NAME="configure"><B><FONT SIZE=+3>C</FONT>HANGES IN THE SOFTWARE CONFIGURATION:</B></A>
       
    66 
       
    67 <UL>
       
    68 
       
    69 	<li> tif_config.wince.h, tiffconf.wince.h, tif_wince.c: WinCE-specific
       
    70 	compatibility stuff from Mateusz Loskot.
       
    71 
       
    72 	<li> Rename config.h.vc and tif_config.h.vc to config.vc.h and 
       
    73 	tif_config.vc.h for easier identification by folks using an IDE.
       
    74 
       
    75 	<li> configure, configure.ac: OJPEG support enabled by default (i.e.,
       
    76 	whe the conformant JPEG support enabled).
       
    77 
       
    78 	<li> README.vms, Makefile.am, configure.com, libtiff/{Makefile.am,
       
    79 	tif_config.h-vms, tif_stream.cxx, tif_vms.c, tiffconf.h-vms}:
       
    80 	Added support for OpenVMS by Alexey Chupahin.
       
    81 
       
    82 	<li> nmake.opt: use /EHsc for VS2005 compatibility.  Also define
       
    83 	_CRT_SECURE_NO_DEPRECATE to avoid noise on VS2005.
       
    84 
       
    85 </UL>
       
    86 
       
    87 <P><HR WIDTH=65% ALIGN=left>
       
    88 
       
    89 <!--------------------------------------------------------------------------->
       
    90 
       
    91 <A NAME="libtiff"><B><FONT SIZE=+3>C</FONT>HANGES IN LIBTIFF:</B></A>
       
    92 
       
    93 <UL>
       
    94 	<li> tif_dirinfo.c (_TIFFFindFieldInfo): Don't attempt to
       
    95 	bsearch() on a NULL fieldinfo list.
       
    96 	(_TIFFFindFieldInfoByName): Don't attempt to lfind() on a NULL
       
    97 	fieldinfo list.
       
    98 
       
    99 	<li> tif_jpeg.c: Changed JPEGInitializeLibJPEG() so that it
       
   100 	will convert from decompressor to compressor or compress to decompress
       
   101 	if required by the force arguments.  This works around a problem in
       
   102 	where the JPEGFixupTestSubsampling() may cause a decompressor to 
       
   103 	be setup on a directory when later a compressor is required with the
       
   104 	force flag set.  Occurs with the addtiffo program for instance.
       
   105 
       
   106 	<li> tif_dirwrite.c: Fixed swapping of byte arrays stored
       
   107 	in-place in tag offsets as per bug
       
   108 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1363">
       
   109 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1363</a>
       
   110 
       
   111 	<li> tif_getimage.c: workaround for 'Fractional scanline' error
       
   112 	reading OJPEG images with rowsperstrip that is not a multiple of
       
   113 	vertical subsampling factor. This bug is mentioned in
       
   114 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1390">
       
   115 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1390</a> and
       
   116 	<a href="http://www.asmail.be/msg0054766825.html">
       
   117 	http://www.asmail.be/msg0054766825.html</a>
       
   118 
       
   119 	<li> tif_dirread.c: Added special function to handle
       
   120 	SubjectDistance EXIF tag as per bug
       
   121 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1362">
       
   122 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1362</a>
       
   123 
       
   124 	<li> tif_dirread.c, tif_read.c: Type of the byte counters
       
   125 	changed from tsize_t to uint32 to be able to work with data arrays
       
   126 	larger than 2GB. Fixes bug
       
   127 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=890">
       
   128 	http://bugzilla.remotesensing.org/show_bug.cgi?id=89</a>	
       
   129 	Idea submitted by Matt Hancher.
       
   130 
       
   131 	<li> tif_dir.c: Workaround for incorrect TIFFs with
       
   132 	ExtraSamples == 999 produced by Corel Draw. As per bug
       
   133 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1490">
       
   134 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1490</a>
       
   135 
       
   136 	<li> tif_write.c: TIFFAppendToStrip() - clear sorted flag if 
       
   137 	we move a strip.
       
   138 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1359">
       
   139 		http://bugzilla.remotesensing.org/show_bug.cgi?id=1359</a>
       
   140 
       
   141 	<li> tif_fax3.c: Save the state of printdir codec dependent method.
       
   142 
       
   143 	<li> tif_jpeg.c: Save the state of printdir codec dependent method
       
   144 	as per bug
       
   145 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1273">
       
   146 		http://bugzilla.remotesensing.org/show_bug.cgi?id=1273</a>
       
   147 
       
   148 	<li> tif_win32.c: Fixed problem with offset value manipulation
       
   149 	as per bug
       
   150 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1322">
       
   151 		http://bugzilla.remotesensing.org/show_bug.cgi?id=1322</a>
       
   152 
       
   153 	<li> tif_fax3.c, tif_next.c, tif_pixarlog.c: Fixed multiple
       
   154 	vulnerabilities, as per	Gentoo bug ():
       
   155 	<a href="http://bugs.gentoo.org/show_bug.cgi?id=142383">
       
   156 	http://bugs.gentoo.org/show_bug.cgi?id=142383</a>
       
   157 
       
   158 	<li> tif_lzw.c, tif_zip.c: Fixed problems with mixing
       
   159 	encoding and decoding on the same read-write TIFF handle.  The LZW
       
   160 	code can now maintain encode and decode state at the same time. The
       
   161 	ZIP code will switch back and forth as needed.  
       
   162 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=757">
       
   163 	http://bugzilla.remotesensing.org/show_bug.cgi?id=757</a>
       
   164 
       
   165 	<li> tif_msdos.c: Avoid handle leak for failed opens.
       
   166 	c/o Thierry Pierron
       
   167 
       
   168 	<li> tif_dirwrite.c: take care not to flush out buffer of strip/tile
       
   169 	data in _TIFFWriteDirectory if TIFF_BEENWRITING not set.  Relates
       
   170 	to bug report by Peng Gao with black strip at bottom of images.
       
   171 
       
   172 	<li> tif_dirwrite.c: make sure to use uint32 for wordcount in 
       
   173 	TIFFWriteNormanTag if writecount is VARIABLE2 for ASCII fields.
       
   174 	It already seems to have been done for other field types.  Needed
       
   175 	for "tiffset" on files with geotiff ascii text.
       
   176 
       
   177 	<li> tif_dirinfo.c: Added missed EXIF tag ColorSpace (40961).
       
   178 
       
   179 	<li> tif_dirread.c: Move IFD fetching code in the separate
       
   180 	function TIFFFetchDirectory() avoiding code duplication in
       
   181 	TIFFReadDirectory() and TIFFReadCustomDirectory().
       
   182 
       
   183 	<li>tif_readdir.c: Added case in EstimateStripByteCounts() for tiled
       
   184 	files.  Modified TIFFReadDirectory() to not invoke
       
   185 	EstimateStripByteCounts() for case where entry 0 and 1 are unequal but
       
   186 	one of them is zero.
       
   187 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1204">
       
   188 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1204</a>
       
   189 
       
   190 	<li> tif_open.c, tif_dirread.c, tiffiop.h: Move IFD looping
       
   191 	checking code in the separate function TIFFCheckDirOffset().
       
   192 
       
   193 	<li> tif_aux.c: Added _TIFFCheckRealloc() function.
       
   194 
       
   195 	<li> tif_fax3.c: Fixed problems in fax decoder as per bug
       
   196 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1194">
       
   197 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1194</a>
       
   198 
       
   199 	<li> tif_jbig.c:  Added	support for JBIG compression scheme
       
   200 	(34661 code) contributed by Lee Howard. As per bug
       
   201 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=896">
       
   202 		http://bugzilla.remotesensing.org/show_bug.cgi?id=896</a>
       
   203 
       
   204 	<li> tif_getimage.c: Added support for planarconfig separate
       
   205 	non-subsampled YCbCr (i.e. separate YCbCr with subsampling [1,1]).
       
   206 
       
   207 	<li> tif_getimage.c: Revision of all RGB(A) put routines:
       
   208 	<ul>
       
   209 		<li> Conversion of unassociated alpha to associated alpha
       
   210 		now done with more performant LUT, and calculation more
       
   211 		correct.
       
   212 	  	<li> Conversion of 16bit data to 8bit data now done with
       
   213 	  	more performant LUT, and calculation more correct
       
   214 	  	<li> Bugfix of handling of 16bit RGB with unassociated alpha
       
   215   	</ul>
       
   216 
       
   217 	<li> tif_ojpeg.c: totally new implementation
       
   218 
       
   219 	<li> tif_getimage.c: removed TIFFTAG_JPEGCOLORMODE handling
       
   220 	of OJPEG images in favor of tif_getimage.c native handling of
       
   221 	YCbCr and desubsampling.
       
   222 
       
   223 	<li> tif_jpeg.c: JPEGVSetField() so that altering the photometric
       
   224 	interpretation causes the "upsampled" flag to be recomputed.  Fixes
       
   225 	peculiar bug where photometric flag had to be set before jpegcolormode
       
   226 	flag.
       
   227 
       
   228 </UL>
       
   229 
       
   230 <P><HR WIDTH=65% ALIGN=left>
       
   231 
       
   232 <!-------------------------------------------------------------------------->
       
   233 	
       
   234 <A NAME="tools"><B><FONT SIZE=+3>C</FONT>HANGES IN THE TOOLS:</B></A>
       
   235 
       
   236 <UL>
       
   237 	<li> tiff2ps.c:  Added support 16-bit images as per bug
       
   238 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1566">
       
   239 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1566</a>.
       
   240 	Patch from William Bader.
       
   241 
       
   242 	<li> tiff2pdf.c: Fix for TIFFTAG_JPEGTABLES tag fetching and
       
   243 	significant upgrade of the whole utility as per bug
       
   244 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1560">
       
   245 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1560</a>.
       
   246 	Now we don't need tiffiop.h in tiff2pdf anymore and will open output
       
   247 	PDF file using TIFFClientOpen() machinery as it is implemented
       
   248 	by Leon Bottou.
       
   249 
       
   250 	<li> tiffcrop.c:  New tiffcrop utility contributed
       
   251 	by Richard Nolde. As per bug
       
   252 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1383">
       
   253 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1383</a>
       
   254 
       
   255 	<li> tiff2pdf.c: Do not assume inches when the resolution units
       
   256 	do not specified. As per bug
       
   257 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1366">
       
   258 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1366</a>
       
   259 
       
   260 	<li> tiffset.c: Properly handle tags with TIFF_VARIABLE writecount.
       
   261 	As per bug
       
   262 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1350">
       
   263 		http://bugzilla.remotesensing.org/show_bug.cgi?id=1350</a>
       
   264 
       
   265 	<li> tif2rgba.c: This utility does not work properly on big-endian
       
   266 	architectures. It was fixed including the bug
       
   267 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1149">
       
   268 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1149</a>
       
   269 
       
   270 	<li> tiff2pdf.c: Fix handling of -q values.
       
   271 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=587">
       
   272 	http://bugzilla.remotesensing.org/show_bug.cgi?id=587</a>
       
   273 
       
   274 	<li> tiffcmp.c: Fixed floating point comparison logic as per bug
       
   275 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1191">
       
   276 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1191</a>
       
   277 
       
   278 	<li> tiff2pdf.c: Fixed buffer overflow condition in
       
   279 	t2p_write_pdf_string() as per bug
       
   280 	<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=1196">
       
   281 	http://bugzilla.remotesensing.org/show_bug.cgi?id=1196</a>
       
   282 
       
   283 </UL>
       
   284 
       
   285 <P><HR WIDTH=65% ALIGN=left>
       
   286 
       
   287 <!--------------------------------------------------------------------------->
       
   288 
       
   289 <A NAME="contrib"><B><FONT SIZE=+3>C</FONT>HANGES IN THE CONTRIB AREA:</B></A>
       
   290 
       
   291 <UL> 
       
   292 
       
   293 	<li> contrib/addtiffo/tif_overview.c: Fix problems with odd sized
       
   294 	output blocks in TIFF_DownSample_Subsampled() (bug 1542).
       
   295 
       
   296 	<li> contrib/dbs/xtiff/xtiff.c: Make xtiff utility compilable.
       
   297 	Though it is still far from the state of being working and useful.
       
   298 
       
   299 </UL>
       
   300 
       
   301 Last updated $Date: 2007/07/13 13:40:12 $.
       
   302 
       
   303 </BODY>
       
   304 </HTML>