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