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>
|
---|