1 2018-11-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3 * configure.ac: libtiff 4.0.10 released.
5 Change COMPRESSION_ZSTD to 50000 and COMPRESSION_WEBP to 50001.
7 2018-11-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
9 Added preliminary release notes for release 4.0.10.
11 2018-11-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
13 tiff2pdf: Eliminate compiler warning about snprintf output truncation when formatting pdf_datetime.
15 2018-11-03 Olivier Paquet <olivier.paquet@gmail.com>
17 Merge branch 'no_tif_platform_console' into 'master'
18 Remove builtin support for GUI warning and error message boxes
20 See merge request libtiff/libtiff!24
22 2018-11-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
24 tiffcrop.c: Eliminate compiler warning about snprintf output truncation when formatting filenum.
26 TWebPVGetField(): Add apparently missing break statement impacting TIFFTAG_WEBP_LOSSLESS.
28 Eliminate compiler warnings about duplicate definitions of streq/strneq macros.
30 Ignore generated files.
32 Remove and ignore files which are a product of autogen.sh.
34 2018-11-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
36 Fix TIFFErrorExt() formatting of size_t type for 32-bit compiles.
38 2018-10-30 Even Rouault <even.rouault@spatialys.com>
40 tiff2bw: avoid null pointer dereference in case of out of memory situation. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2819 / CVE-2018-18661
42 tiffio.h: fix comment.
44 2018-10-26 Even Rouault <even.rouault@spatialys.com>
46 Merge branch 'header2' into 'master'
47 Fix 725279bd: Standalone tif_predict.h: tiff.h should be tiffiop.h
49 See merge request libtiff/libtiff!41
51 2018-10-26 Kurt Schwehr <schwehr@google.com>
53 Fix 725279bd: Standalone tif_predict.h: tiff.h should be tiffiop.h.
55 2018-10-25 Even Rouault <even.rouault@spatialys.com>
57 Merge branch 'headers' into 'master'
58 Add includes to headers to allow them to stand alone.
60 See merge request libtiff/libtiff!40
62 2018-10-24 Kurt Schwehr <schwehr@google.com>
64 Add includes to headers to allow them to stand alone.
65 This allows compilers that can do header stand alone header parsing
68 2018-10-18 Even Rouault <even.rouault@spatialys.com>
70 LZMAPreEncode: emit verbose error if lzma_stream_encoder() fails (typically because not enough memory available)
72 2018-10-17 Even Rouault <even.rouault@spatialys.com>
74 tif_webp.c: fix previous commit that broke scanline decoding.
76 tif_webp.c: fix potential read outside libwebp buffer on corrupted images
78 2018-10-14 Even Rouault <even.rouault@spatialys.com>
80 Merge branch 'jbig_decode_overflow' into 'master'
81 JBIG: fix potential out-of-bounds write in JBIGDecode()
83 See merge request libtiff/libtiff!38
85 2018-10-14 Even Rouault <even.rouault@spatialys.com>
87 JBIG: fix potential out-of-bounds write in JBIGDecode()
88 JBIGDecode doesn't check if the user provided buffer is large enough
89 to store the JBIG decoded image, which can potentially cause out-of-bounds
91 This issue was reported and analyzed by Thomas Dullien.
93 Also fixes a (harmless) potential use of uninitialized memory when
94 tif->tif_rawsize > tif->tif_rawcc
96 And in case libtiff is compiled with CHUNKY_STRIP_READ_SUPPORT, make sure
97 that whole strip data is provided to JBIGDecode()
99 2018-10-05 Even Rouault <even.rouault@spatialys.com>
101 tif_webp.c: fix scanline reading/writing.
103 WEBP codec: initialize nSamples in TWebPSetupDecode() and TWebPSetupEncode()
105 2018-10-05 Even Rouault <even.rouault@spatialys.com>
107 Merge branch 'tif_webp' into 'master'
110 See merge request libtiff/libtiff!32
112 2018-10-05 Norman Barker <norman.barker@mapbox.com>
116 2018-09-17 Even Rouault <even.rouault@spatialys.com>
118 Merge branch 'master' into 'master'
119 fix three potential vulnerabilities.
121 See merge request libtiff/libtiff!33
123 2018-09-08 Young_X <YangX92@hotmail.com>
125 fix out-of-bound read on some tiled images.
127 avoid potential int32 overflows in multiply_ms()
129 only read/write TIFFTAG_GROUP3OPTIONS or TIFFTAG_GROUP4OPTIONS if compression is COMPRESSION_CCITTFAX3 or COMPRESSION_CCITTFAX4
131 2018-08-15 Even Rouault <even.rouault@spatialys.com>
133 TIFFSetupStrips(): avoid potential uint32 overflow on 32-bit systems with large number of strips. Probably relates to http://bugzilla.maptools.org/show_bug.cgi?id=2788 / CVE-2018-10779
135 2018-08-07 Even Rouault <even.rouault@spatialys.com>
137 ZSTD: fix flush issue that can cause endless loop in ZSTDEncode()
138 Fixes https://github.com/OSGeo/gdal/issues/833
140 2018-08-07 Even Rouault <even.rouault@spatialys.com>
142 Merge branch 'fix_bug_2800' into 'master'
143 Fix libtiff 4.0.8 regression when reading LZW-compressed strips with scanline API
145 See merge request libtiff/libtiff!31
147 2018-08-07 Even Rouault <even.rouault@spatialys.com>
149 Fix libtiff 4.0.8 regression when reading LZW-compressed strips with scanline API
150 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2800
152 2018-07-05 Even Rouault <even.rouault@spatialys.com>
154 Add tag and pseudo-tag definitions for ESRI LERC codec (out of tree codec whose source is at https://github.com/OSGeo/gdal/blob/master/gdal/frmts/gtiff/tif_lerc.c)
156 2018-07-02 Even Rouault <even.rouault@spatialys.com>
158 Fix TIFFTAG_ZSTD_LEVEL pseudo tag value to be > 65536, and the next one in the series
160 2018-05-25 Stefan Weil <sw@weilnetz.de>
162 Remove builtin support for GUI warning and error message boxes.
163 Now warnings always go to the console by default unless applications
164 define their own warning and error handlers.
166 GUI applications (and Windows CE) are required to define such handlers.
168 2018-05-12 Even Rouault <even.rouault@spatialys.com>
170 LZWDecodeCompat(): fix potential index-out-of-bounds write. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2780 / CVE-2018-8905
171 The fix consists in using the similar code LZWDecode() to validate we
172 don't write outside of the output buffer.
174 TIFFFetchNormalTag(): avoid (probably false positive) clang-tidy clang-analyzer-core.NullDereference warnings
176 TIFFWriteDirectorySec: avoid assertion. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2795. CVE-2018-10963
178 2018-05-04 Even Rouault <even.rouault@spatialys.com>
180 tif_color.c: fix code comment.
182 2018-04-17 Even Rouault <even.rouault@mines-paris.org>
184 Merge branch 'fuzzer-fix' into 'master'
185 remove a pointless multiplication and a variable that's not necessary
187 See merge request libtiff/libtiff!29
189 2018-04-17 Paul Kehrer <paul.l.kehrer@gmail.com>
191 remove a pointless multiplication and a variable that's not necessary.
193 2018-04-17 Even Rouault <even.rouault@mines-paris.org>
195 Merge branch 'ossfuzz' into 'master'
196 move oss-fuzz build script and fuzzer into libtiff tree
198 See merge request libtiff/libtiff!28
200 2018-04-17 Paul Kehrer <paul.l.kehrer@gmail.com>
202 move oss-fuzz build script and fuzzer into libtiff tree.
204 2018-04-14 Even Rouault <even.rouault@spatialys.com>
206 _TIFFGetMaxColorChannels: update for LOGLUV, ITULAB and ICCLAB that have 3 color channels
208 2018-04-12 Even Rouault <even.rouault@spatialys.com>
212 2018-04-12 Even Rouault <even.rouault@mines-paris.org>
214 Merge branch 'master' into 'master'
215 Fix NULL pointer dereference in TIFFPrintDirectory (bugzilla 2778/CVE-2018-7456)
217 See merge request libtiff/libtiff!27
219 2018-04-11 Hugo Lefeuvre <hle@debian.org>
221 Fix NULL pointer dereference in TIFFPrintDirectory.
222 The TIFFPrintDirectory function relies on the following assumptions,
223 supposed to be guaranteed by the specification:
225 (a) A Transfer Function field is only present if the TIFF file has
226 photometric type < 3.
228 (b) If SamplesPerPixel > Color Channels, then the ExtraSamples field
229 has count SamplesPerPixel - (Color Channels) and contains
230 information about supplementary channels.
232 While respect of (a) and (b) are essential for the well functioning of
233 TIFFPrintDirectory, no checks are realized neither by the callee nor
234 by TIFFPrintDirectory itself. Hence, following scenarios might happen
235 and trigger the NULL pointer dereference:
237 (1) TIFF File of photometric type 4 or more has illegal Transfer
240 (2) TIFF File has photometric type 3 or less and defines a
241 SamplesPerPixel field such that SamplesPerPixel > Color Channels
242 without defining all extra samples in the ExtraSamples fields.
244 In this patch, we address both issues with respect of the following
247 (A) In the case of (1), the defined transfer table should be printed
248 safely even if it isn't 'legal'. This allows us to avoid expensive
249 checks in TIFFPrintDirectory. Also, it is quite possible that
250 an alternative photometric type would be developed (not part of the
251 standard) and would allow definition of Transfer Table. We want
252 libtiff to be able to handle this scenario out of the box.
254 (B) In the case of (2), the transfer table should be printed at its
255 right size, that is if TIFF file has photometric type Palette
256 then the transfer table should have one row and not three, even
257 if two extra samples are declared.
259 In order to fulfill (A) we simply add a new 'i < 3' end condition to
260 the broken TIFFPrintDirectory loop. This makes sure that in any case
261 where (b) would be respected but not (a), everything stays fine.
263 (B) is fulfilled by the loop condition
264 'i < td->td_samplesperpixel - td->td_extrasamples'. This is enough as
265 long as (b) is respected.
267 Naturally, we also make sure (b) is respected. This is done in the
268 TIFFReadDirectory function by making sure any non-color channel is
269 counted in ExtraSamples.
271 This commit addresses CVE-2018-7456.
273 2018-03-27 Even Rouault <even.rouault@mines-paris.org>
275 Merge branch 'tiffset-long8' into 'master'
276 tiffset: Add support for LONG8, SLONG8 and IFD8 field types
278 See merge request libtiff/libtiff!25
280 2018-03-26 Roger Leigh <rleigh@codelibre.net>
282 port: Clean up NetBSD sources and headers to build standalone.
284 2018-03-23 Roger Leigh <rleigh@dundee.ac.uk>
286 port: Add strtol, strtoll and strtoull.
287 Also update strtoul. All use the same implementation from NetBSD libc.
289 tiffset: Add support for LONG8, SLONG8 and IFD8 field types.
291 2018-03-17 Even Rouault <even.rouault@spatialys.com>
293 ChopUpSingleUncompressedStrip: avoid memory exhaustion (CVE-2017-11613)
294 Rework fix done in 3719385a3fac5cfb20b487619a5f08abbf967cf8 to work in more
295 cases like https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=6979.
298 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2724
300 2018-03-13 Even Rouault <even.rouault@spatialys.com>
302 libtiff/tif_luv.c: rewrite loops in a more readable way (to avoid false positive reports like http://bugzilla.maptools.org/show_bug.cgi?id=2779)
304 2018-03-13 Even Rouault <even.rouault@mines-paris.org>
306 Merge branch 'avoid_memory_exhaustion_in_ChopUpSingleUncompressedStrip' into 'master'
307 ChopUpSingleUncompressedStrip: avoid memory exhaustion (CVE-2017-11613)
309 See merge request libtiff/libtiff!26
311 2018-03-11 Even Rouault <even.rouault@spatialys.com>
313 ChopUpSingleUncompressedStrip: avoid memory exhaustion (CVE-2017-11613)
314 In ChopUpSingleUncompressedStrip(), if the computed number of strips is big
315 enough and we are in read only mode, validate that the file size is consistent
316 with that number of strips to avoid useless attempts at allocating a lot of
317 memory for the td_stripbytecount and td_stripoffset arrays.
319 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2724
321 2018-03-10 Even Rouault <even.rouault@spatialys.com>
325 2018-03-03 Even Rouault <even.rouault@spatialys.com>
327 Avoid warning with gcc 8 (partially revert 647b0e8c11ee11896f319b92cf110775f538d75c)
329 2018-02-25 Even Rouault <even.rouault@mines-paris.org>
331 Merge branch 'typos' into 'master'
334 See merge request libtiff/libtiff!23
336 2018-02-24 Stefan Weil <sw@weilnetz.de>
339 Most of them were found by codespell.
341 2018-02-14 Even Rouault <even.rouault@spatialys.com>
347 Add warning about COMPRESSION_ZSTD not being officialy registered.
349 2018-02-14 Even Rouault <even.rouault@mines-paris.org>
351 Merge branch 'bug2772' into 'master'
354 See merge request libtiff/libtiff!20
356 2018-02-12 Nathan Baker <nathanb@lenovo-chrome.com>
359 It is possible to craft a TIFF document where the IFD list is circular,
360 leading to an infinite loop while traversing the chain. The libtiff
361 directory reader has a failsafe that will break out of this loop after
362 reading 65535 directory entries, but it will continue processing,
363 consuming time and resources to process what is essentially a bogus TIFF
366 This change fixes the above behavior by breaking out of processing when
367 a TIFF document has >= 65535 directories and terminating with an error.
369 2018-02-09 Even Rouault <even.rouault@mines-paris.org>
371 Merge branch 'libtiff-as-subdirectory-fixes' into 'master'
372 Prefer target_include_directories
374 See merge request libtiff/libtiff!12
376 2018-02-06 Even Rouault <even.rouault@mines-paris.org>
378 Merge branch 'cmake-cleanups' into 'master'
381 See merge request libtiff/libtiff!11
383 2018-02-06 Even Rouault <even.rouault@mines-paris.org>
385 Merge branch 'check-right-cxx-variable' into 'master'
386 Check right cxx variable
388 See merge request libtiff/libtiff!19
390 2018-02-06 Even Rouault <even.rouault@mines-paris.org>
392 Merge branch 'dont-leak-stream-open' into 'master'
393 Fix a memory leak in TIFFStreamOpen
395 See merge request libtiff/libtiff!17
397 2018-02-06 Ben Boeckel <ben.boeckel@kitware.com>
399 cmake: check CXX_SUPPORT.
400 This variable is set in response to the `cxx` cache variable; use it
403 2018-02-04 Olivier Paquet <olivier.paquet@gmail.com>
405 Merge branch 'warnings' into 'master'
406 Fix all compiler warnings for default build
408 See merge request libtiff/libtiff!16
410 2018-02-04 Nathan Baker <elitebadger@gmail.com>
412 Fix all compiler warnings for default build.
414 2018-01-30 Paul Kehrer <paul.l.kehrer@gmail.com>
418 2018-01-29 Paul Kehrer <paul.l.kehrer@gmail.com>
420 use hard tabs like the rest of the project.
422 Fix a memory leak in TIFFStreamOpen.
423 TIFFStreamOpen allocates a new tiff{o,i}s_data, but if TIFFClientOpen
424 fails then that struct is leaked. Delete it if the returned TIFF * is
427 2018-01-29 Kevin Funk <kfunk@kde.org>
429 Bump minimum required CMake version to v2.8.11.
430 Because we use the BUILD_INTERFACE generator expression
432 2018-01-27 Even Rouault <even.rouault@mines-paris.org>
434 Merge branch 'patch-1' into 'master'
435 Update CMakeLists.txt for build fix on Windows
437 See merge request libtiff/libtiff!14
439 2018-01-27 Even Rouault <even.rouault@mines-paris.org>
441 Merge branch 'patch-2' into 'master'
442 Update tiffgt.c for build fix on Windows
444 See merge request libtiff/libtiff!13
446 2018-01-25 Olivier Paquet <olivier.paquet@gmail.com>
448 Merge branch 'bug2750' into 'master'
449 Add workaround to pal2rgb buffer overflow.
451 See merge request libtiff/libtiff!15
453 2018-01-25 Nathan Baker <elitebadger@gmail.com>
455 Add workaround to pal2rgb buffer overflow.
457 2018-01-23 Andrea <andrea@andreaplanet.com>
459 Update tiffgt.c for build fix on Windows.
461 Update CMakeLists.txt for build fix on Windows.
463 2018-01-15 Even Rouault <even.rouault@mines-paris.org>
465 Merge branch 'has-attribute-check' into 'master'
466 tiffiop: use __has_attribute to detect the no_sanitize attribute
468 See merge request libtiff/libtiff!10
470 2018-01-15 Ben Boeckel <ben.boeckel@kitware.com>
472 cmake: avoid setting hard-coded variables in the cache.
474 cmake: avoid an unnecessary intermediate variable.
476 cmake: avoid an unnecessary intermediate variable.
478 cmake: avoid tautological logic.
480 cmake: use check_symbol_exists.
481 This accounts for symbols being provided by macros.
483 cmake: remove unused configure checks.
485 2018-01-12 Kevin Funk <kfunk@kde.org>
487 Prefer target_include_directories.
488 When libtiff is included in a super project via a simple
489 `add_subdirectory(libtiff)`, this way the `tiff` library target has all
490 the necessary information to build against it.
492 Note: The BUILD_INTERFACE generator expression feature requires at least
493 CMake v2.8.11 if I'm correct.
495 2018-01-09 Ben Boeckel <ben.boeckel@kitware.com>
497 tiffiop: use __has_attribute to detect the no_sanitize attribute.
499 2017-12-31 Even Rouault <even.rouault@spatialys.com>
501 man/TIFFquery.3tiff: remove reference to non-existing TIFFReadStrip() function in TIFFIsByteSwapped() documentation. Patch by Eric Piel. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2763
503 libtiff/tif_dir.c: _TIFFVGetField(): fix heap out-of-bounds access when requesting TIFFTAG_NUMBEROFINKS on a EXIF directory. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2765. Reported by Google Autofuzz project
505 libtiff/tif_print.c: TIFFPrintDirectory(): fix null pointer dereference on corrupted file. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2770
507 2017-12-21 Even Rouault <even.rouault@spatialys.com>
509 Add libzstd to gitlab-ci.
511 2017-12-21 Even Rouault <even.rouault@spatialys.com>
513 Add ZSTD compression codec.
514 From https://github.com/facebook/zstd
515 "Zstandard, or zstd as short version, is a fast lossless compression
516 algorithm, targeting real-time compression scenarios at zlib-level
517 and better compression ratios. It's backed by a very fast entropy stage,
518 provided by Huff0 and FSE library."
520 We require libzstd >= 1.0.0 so as to be able to use streaming compression
521 and decompression methods.
523 The default compression level we have selected is 9 (range goes from 1 to 22),
524 which experimentally offers equivalent or better compression ratio than
525 the default deflate/ZIP level of 6, and much faster compression.
527 For example on a 6600x4400 16bit image, tiffcp -c zip runs in 10.7 seconds,
528 while tiffcp -c zstd runs in 5.3 seconds. Decompression time for zip is
529 840 ms, and for zstd 650 ms. File size is 42735936 for zip, and
530 42586822 for zstd. Similar findings on other images.
532 On a 25894x16701 16bit image,
534 Compression time Decompression time File size
536 ZSTD 35 s 3.2 s 399 700 498
537 ZIP/Deflate 1m 20 s 4.9 s 419 622 336
539 2017-12-10 Even Rouault <even.rouault@mines-paris.org>
541 Merge branch 'fix_cve-2017-9935' into 'master'
544 See merge request libtiff/libtiff!7
546 2017-12-10 Brian May <brian@linuxpenguins.xyz>
548 tiff2pdf: Fix apparent incorrect type for transfer table.
549 The standard says the transfer table contains unsigned 16 bit values,
550 I have no idea why we refer to them as floats.
552 2017-12-10 Brian May <brian@linuxpenguins.xyz>
554 tiff2pdf: Fix CVE-2017-9935.
555 Fix for http://bugzilla.maptools.org/show_bug.cgi?id=2704
557 This vulnerability - at least for the supplied test case - is because we
558 assume that a tiff will only have one transfer function that is the same
559 for all pages. This is not required by the TIFF standards.
561 We than read the transfer function for every page. Depending on the
562 transfer function, we allocate either 2 or 4 bytes to the XREF buffer.
563 We allocate this memory after we read in the transfer function for the
566 For the first exploit - POC1, this file has 3 pages. For the first page
567 we allocate 2 extra extra XREF entries. Then for the next page 2 more
568 entries. Then for the last page the transfer function changes and we
569 allocate 4 more entries.
571 When we read the file into memory, we assume we have 4 bytes extra for
572 each and every page (as per the last transfer function we read). Which
573 is not correct, we only have 2 bytes extra for the first 2 pages. As a
574 result, we end up writing past the end of the buffer.
576 There are also some related issues that this also fixes. For example,
577 TIFFGetField can return uninitalized pointer values, and the logic to
578 detect a N=3 vs N=1 transfer function seemed rather strange.
580 It is also strange that we declare the transfer functions to be of type
581 float, when the standard says they are unsigned 16 bit values. This is
582 fixed in another patch.
584 This patch will check to ensure that the N value for every transfer
585 function is the same for every page. If this changes, we abort with an
586 error. In theory, we should perhaps check that the transfer function
587 itself is identical for every page, however we don't do that due to the
588 confusion of the type of the data in the transfer function.
590 2017-12-10 Even Rouault <even.rouault@mines-paris.org>
592 Merge branch 'undef-warn-fixes' into 'master'
593 Fix a couple of harmless but annoying -Wundef warnings
595 See merge request libtiff/libtiff!8
597 2017-12-07 Vadim Zeitlin <vadim@zeitlins.org>
599 Remove tests for undefined SIZEOF_VOIDP.
600 As configure never uses AC_CHECK_SIZEOF(void*), this symbol is never
601 defined and so it doesn't make sense to test it in the code, this just
602 results in -Wundef warnings if they're enabled.
604 Avoid harmless -Wundef warnings for __clang_major__
605 Check that we're using Clang before checking its version.
607 2017-12-02 Even Rouault <even.rouault@mines-paris.org>
609 Merge branch 'remove_autogenerated_files' into 'master'
610 Remove autogenerated files
612 See merge request libtiff/libtiff!5
614 2017-12-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
616 Merge branch 'tif_config_h_includes' into 'master'
617 'tif_config.h' or 'tiffiop.h' must be included before any system header.
619 See merge request libtiff/libtiff!6
621 2017-12-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
623 'tif_config.h' or 'tiffio.h' must be included before any system header.
625 2017-12-01 Even Rouault <even.rouault@spatialys.com>
627 .gitignore: add patterns for build from root.
629 Remove remaining .cvsignore files.
631 Remove autoconf/automake generated files, and add them to .gitignore.
633 2017-12-01 Olivier Paquet <olivier.paquet@gmail.com>
635 Merge branch 'makedistcheck' into 'master'
636 build/gitlab-ci and build/travis-ci: add a 'make dist' step in autoconf_build()…
638 See merge request libtiff/libtiff!4
640 2017-12-01 Even Rouault <even.rouault@spatialys.com>
642 build/gitlab-ci and build/travis-ci: add a 'make dist' step in autoconf_build() target, to check we are release-ready
644 2017-12-01 Even Rouault <even.rouault@mines-paris.org>
646 Merge branch 'git_updates' into 'master'
649 See merge request libtiff/libtiff!2
651 2017-12-01 Even Rouault <even.rouault@spatialys.com>
653 HOWTO-RELEASE: update to use signed tags.
655 README.md: use markdown syntax for hyperlinks.
657 2017-11-30 Even Rouault <even.rouault@spatialys.com>
661 Regenerate autoconf files.
663 Makefile.am: update to reflect removal of README.vms and README -> README.md
665 Remove all $Id and $Headers comments with CVS versions.
667 HOWTO-RELEASE: update for git.
669 Remove outdated .cvsignore.
671 Remove outdated commit script.
675 Rename README as README.md, and update content.
677 html/index.html: reflect change from CVS to gitlab.
679 2017-11-30 Olivier Paquet <olivier.paquet@gmail.com>
681 Merge branch 'test-ci' into 'master'
682 Update CI configuration
684 See merge request libtiff/libtiff!1
686 2017-11-23 Roger Leigh <rleigh@codelibre.net>
688 appveyor: Correct path for git clone and skip artefact archival.
690 2017-11-22 Roger Leigh <rleigh@codelibre.net>
692 travis-ci: Remove unused matrix exclusion.
694 Add gitlab-ci build support.
696 2017-11-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
698 * configure.ac: libtiff 4.0.9 released.
700 * html/v4.0.9.html: Add HTML file to document changes in libtiff
703 2017-11-17 Even Rouault <even.rouault at spatialys.com>
705 * libtiff/tif_aux.c, tif_getimage.c, tif_read.c: typo fixes in
708 2017-11-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
710 * test/Makefile.am: Add some tests for tiff2bw.
712 2017-11-01 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
714 * tools/tiff2bw.c (main): Free memory allocated in the tiff2bw
715 program. This is in response to the report associated with
716 CVE-2017-16232 but does not solve the extremely high memory usage
717 with the associated POC file.
719 2017-10-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
721 * tools/tiff2pdf.c (t2p_sample_realize_palette): Fix possible
722 arithmetic overflow in bounds checking code and eliminate
723 comparison between signed and unsigned type.
725 * tools/fax2tiff.c (_FAX_Client_Data): Pass FAX_Client_Data as the
726 client data. This client data is not used at all at the moment,
727 but it makes the most sense. Issue that the value of
728 client_data.fd was passed where a pointer is expected was reported
729 via email by Gerald Schade on Sun, 29 Oct 2017.
731 2017-10-23 Even Rouault <even.rouault at spatialys.com>
733 * libtiff/tif_getimage.c: avoid floating point division by zero in
734 initCIELabConversion()
735 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3733
738 2017-10-17 Even Rouault <even.rouault at spatialys.com>
740 * libtiff/tif_jpeg.c: add compatibility with libjpeg-turbo 1.5.2 that
741 honours max_memory_to_use > 0.
742 Cf https://github.com/libjpeg-turbo/libjpeg-turbo/issues/162
744 2017-10-10 Even Rouault <even.rouault at spatialys.com>
746 * nmake.opt: support a DEBUG=1 option, so as to adjust OPTFLAGS and use
747 /MDd runtime in debug mode.
749 2017-10-01 Even Rouault <even.rouault at spatialys.com>
751 * tools/tiffset.c: fix setting a single value for the ExtraSamples tag
752 (and other tags with variable number of values).
753 So 'tiffset -s ExtraSamples 1 X'. This only worked
754 when setting 2 or more values, but not just one.
756 2017-09-29 Even Rouault <even.rouault at spatialys.com>
758 * libtiff/libtiff.def: add TIFFReadRGBAStripExt and TIFFReadRGBATileExt
759 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2735
761 2017-09-09 Even Rouault <even.rouault at spatialys.com>
763 * libtiff/tif_dirread.c: add NULL check to avoid likely false positive
764 null-pointer dereference warning by CLang Static Analyzer.
766 2017-09-07 Even Rouault <even.rouault at spatialys.com>
768 * libtiff/tiffiop.h, tif_aux.c: redirect SeekOK() macro to a _TIFFSeekoK()
769 function that checks if the offset is not bigger than INT64_MAX, so as
770 to avoid a -1 error return code of TIFFSeekFile() to match a required
771 seek to UINT64_MAX/-1.
772 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2726
773 Adapted from proposal by Nicolas Ruff.
775 2017-08-29 Even Rouault <even.rouault at spatialys.com>
777 * libtiff/tif_jpeg.c: accept reading the last strip of a JPEG compressed
778 file if the codestream height is larger than the truncated height of the
779 strip. Emit a warning in this situation since this is non compliant.
781 2017-08-28 Even Rouault <even.rouault at spatialys.com>
783 * test/Makefile.am: add missing reference to images/quad-lzw-compat.tiff
784 to fix "make distcheck". Patch by Roger Leigh
786 2017-08-23 Even Rouault <even.rouault at spatialys.com>
788 * libtiff/tif_dirwrite.c: replace assertion to tag value not fitting
789 on uint32 when selecting the value of SubIFD tag by runtime check
790 (in TIFFWriteDirectoryTagSubifd()).
791 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2728
792 Reported by team OWL337
794 2017-08-23 Even Rouault <even.rouault at spatialys.com>
796 * libtiff/tif_dirwrite.c: replace assertion related to not finding the
797 SubIFD tag by runtime check (in TIFFWriteDirectorySec())
798 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2727
799 Reported by team OWL337
801 2017-07-24 Even Rouault <even.rouault at spatialys.com>
803 * libtiff/tif_luv.c: further reduce memory requirements for temporary
804 buffer when RowsPerStrip >= image_length in LogLuvInitState() and
806 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2700
809 2017-07-24 Even Rouault <even.rouault at spatialys.com>
811 * libtiff/tif_getimage.c: fix fromskew computation when to-be-skipped
812 pixel number is not a multiple of the horizontal subsampling, and
813 also in some other cases. Impact putcontig8bitYCbCr44tile,
814 putcontig8bitYCbCr42tile, putcontig8bitYCbCr41tile,
815 putcontig8bitYCbCr21tile and putcontig8bitYCbCr12tile
816 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2637 (discovered
818 and https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2691 (credit
821 2017-07-24 Even Rouault <even.rouault at spatialys.com>
823 * libtiff/tif_getimage.c: gtTileContig() and gtTileSeparate():
824 properly break from loops on error when stoponerr is set, instead
825 of going on iterating on row based loop.
827 2017-07-18 Even Rouault <even.rouault at spatialys.com>
829 * libtiff/tif_luv.c: LogLuvInitState(): avoid excessive memory
830 allocation when RowsPerStrip tag is missing.
831 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2683
834 2017-07-15 Even Rouault <even.rouault at spatialys.com>
836 * libtiff/tif_read.c: add protection against excessive memory
837 allocation attempts in TIFFReadDirEntryArray() on short files.
838 Effective for mmap'ed case. And non-mmap'ed case, but restricted
840 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2675
842 2017-07-15 Even Rouault <even.rouault at spatialys.com>
844 * libtiff/tif_read.c: in TIFFFetchStripThing(), only grow the
845 arrays that hold StripOffsets/StripByteCounts, when they are smaller
846 than the expected number of striles, up to 1 million striles, and
847 error out beyond. Can be tweaked by setting the environment variable
848 LIBTIFF_STRILE_ARRAY_MAX_RESIZE_COUNT.
849 This partially goes against a change added on 2002-12-17 to accept
850 those arrays of wrong sizes, but is needed to avoid denial of services.
851 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2350
854 2017-07-15 Even Rouault <even.rouault at spatialys.com>
856 * libtiff/tif_read.c: TIFFFillStrip() / TIFFFillTile().
857 Complementary fix for http://bugzilla.maptools.org/show_bug.cgi?id=2708
858 in the isMapped() case, so as to avoid excessive memory allocation
859 when we need a temporary buffer but the file is truncated.
861 2017-07-15 Even Rouault <even.rouault at spatialys.com>
863 * tools/tiff2pdf.c: prevent heap buffer overflow write in "Raw"
864 mode on PlanarConfig=Contig input images.
865 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2715
866 Reported by team OWL337
868 2017-07-11 Even Rouault <even.rouault at spatialys.com>
870 * libtiff/tif_dir.c: avoid potential null pointer dereference in
871 _TIFFVGetField() on corrupted TIFFTAG_NUMBEROFINKS tag instance.
872 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2713
874 2017-07-11 Even Rouault <even.rouault at spatialys.com>
876 * libtiff/tif_lzw.c: fix potential out-of-buffer read on 1-byte LZW
877 strips. Crashing issue only on memory mapped files, where the strip
878 offset is the last byte of the file, and the file size is a multiple
879 of one page size on the CPU architecture (typically 4096). Credit
882 2017-07-11 Even Rouault <even.rouault at spatialys.com>
884 * test/tiffcp-lzw-compat.sh, test/images/quad-lzw-compat.tiff: new files
885 to test old-style LZW decompression
886 * test/common.sh, Makefile.am, CMakeList.txt: updated with above
888 2017-07-11 Even Rouault <even.rouault at spatialys.com>
890 * refresh autoconf/make stuff with what is on Ubuntu 16.04 (minor changes)
892 2017-07-11 Even Rouault <even.rouault at spatialys.com>
894 * libtiff/tif_lzw.c: fix 4.0.8 regression in the decoding of old-style LZW
897 2017-07-10 Even Rouault <even.rouault at spatialys.com>
899 * libtiff/tif_pixarlog.c: avoid excessive memory allocation on decoding
900 when RowsPerStrip tag is not defined (and thus td_rowsperstrip == UINT_MAX)
901 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2554
904 2017-07-04 Even Rouault <even.rouault at spatialys.com>
906 * libtiff/tif_read.c, tiffiop.h: add a _TIFFReadEncodedTileAndAllocBuffer()
907 and _TIFFReadTileAndAllocBuffer() variants of TIFFReadEncodedTile() and
908 TIFFReadTile() that allocates the decoded buffer only after a first
909 successful TIFFFillTile(). This avoids excessive memory allocation
911 * libtiff/tif_getimage.c: use _TIFFReadTileAndAllocBuffer().
912 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2470
915 2017-07-04 Even Rouault <even.rouault at spatialys.com>
917 * libtiff/tif_error.c, tif_warning.c: correctly use va_list when both
918 an old-style and new-style warning/error handlers are installed.
919 Patch by Paavo Helde (sent on the mailing list)
921 2017-07-02 Even Rouault <even.rouault at spatialys.com>
923 * libtiff/tif_read.c: TIFFStartTile(): set tif_rawcc to
924 tif_rawdataloaded when it is set. Similarly to TIFFStartStrip().
925 This issue was revealed by the change of 2017-06-30 in TIFFFileTile(),
926 limiting the number of bytes read. But it could probably have been hit
927 too in CHUNKY_STRIP_READ_SUPPORT mode previously ?
928 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2454
931 2017-06-30 Even Rouault <even.rouault at spatialys.com>
933 * man: update documentation regarding SubIFD tag and
934 TIFFSetSubDirectory() data type.
936 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2671
938 2017-06-30 Even Rouault <even.rouault at spatialys.com>
940 * libtiff/tif_dirwrite.c: in TIFFWriteDirectoryTagCheckedXXXX()
941 functions associated with LONG8/SLONG8 data type, replace assertion that
942 the file is BigTIFF, by a non-fatal error.
943 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2712
944 Reported by team OWL337
946 2017-06-30 Even Rouault <even.rouault at spatialys.com>
948 * libtiff/tif_read.c, tiffiop.h: add a _TIFFReadEncodedStripAndAllocBuffer()
949 function, variant of TIFFReadEncodedStrip() that allocates the
950 decoded buffer only after a first successful TIFFFillStrip(). This avoids
951 excessive memory allocation on corrupted files.
952 * libtiff/tif_getimage.c: use _TIFFReadEncodedStripAndAllocBuffer().
953 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2708 and
954 https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2433 .
957 2017-06-30 Even Rouault <even.rouault at spatialys.com>
959 * libtiff/tif_read.c: TIFFFillTile(): add limitation to the number
960 of bytes read in case td_stripbytecount[strip] is bigger than
961 reasonable, so as to avoid excessive memory allocation (similarly to
962 what was done for TIFFFileStrip() on 2017-05-10)
964 2017-06-29 Even Rouault <even.rouault at spatialys.com>
966 * libtiff/tiffiop.h, libtiff/tif_jpeg.c, libtiff/tif_jpeg_12.c,
967 libtiff/tif_read.c: make TIFFReadScanline() works in
968 CHUNKY_STRIP_READ_SUPPORT mode with JPEG stream with multiple scans.
969 Also make configurable through a LIBTIFF_JPEG_MAX_ALLOWED_SCAN_NUMBER
970 environment variable the maximum number of scans allowed. Defaults to
973 2017-06-27 Even Rouault <even.rouault at spatialys.com>
975 * libtiff/tif_dirread.c: in TIFFReadDirEntryFloat(), check that a
976 double value can fit in a float before casting. Patch by Nicolas RUFF
978 2017-06-26 Even Rouault <even.rouault at spatialys.com>
980 * libtiff/tif_jbig.c: fix memory leak in error code path of JBIGDecode()
981 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2706
982 Reported by team OWL337
984 2017-06-24 Even Rouault <even.rouault at spatialys.com>
986 * libtiff/tif_jpeg.c: error out at decoding time if anticipated libjpeg
987 memory allocation is above 100 MB. libjpeg in case of multiple scans,
988 which is allowed even in baseline JPEG, if components are spread over several
989 scans and not interleavedin a single one, needs to allocate memory (or
990 backing store) for the whole strip/tile.
991 See http://www.libjpeg-turbo.org/pmwiki/uploads/About/TwoIssueswiththeJPEGStandard.pdf
992 This limitation may be overriden by setting the
993 LIBTIFF_ALLOW_LARGE_LIBJPEG_MEM_ALLOC environment variable, or recompiling
994 libtiff with a custom value of TIFF_LIBJPEG_LARGEST_MEM_ALLOC macro.
996 2017-06-24 Even Rouault <even.rouault at spatialys.com>
998 * libtiff/tif_jpeg.c: add anti-denial of service measure to avoid excessive
999 CPU consumption on progressive JPEGs with a huge number of scans.
1000 See http://www.libjpeg-turbo.org/pmwiki/uploads/About/TwoIssueswiththeJPEGStandard.pdf
1001 Note: only affects libtiff since 2014-12-29 where support of non-baseline JPEG
1004 2017-06-18 Even Rouault <even.rouault at spatialys.com>
1006 * libtiff/tiffiop.h: add TIFF_NOSANITIZE_UNSIGNED_INT_OVERFLOW macro to
1007 disable CLang warnings raised by -fsanitize=undefined,unsigned-integer-overflow
1008 * libtiff/tif_predict.c: decorate legitimate functions where unsigned int
1009 overflow occur with TIFF_NOSANITIZE_UNSIGNED_INT_OVERFLOW
1010 * libtiff/tif_dirread.c: avoid unsigned int overflow in EstimateStripByteCounts()
1011 and BYTECOUNTLOOKSBAD when file is too short.
1012 * libtiff/tif_jpeg.c: avoid (harmless) unsigned int overflow on tiled images.
1013 * libtiff/tif_fax3.c: avoid unsigned int overflow in Fax3Encode2DRow(). Could
1014 potentially be a bug with huge rows.
1015 * libtiff/tif_getimage.c: avoid many (harmless) unsigned int overflows.
1017 2017-06-12 Even Rouault <even.rouault at spatialys.com>
1019 * libtiff/tif_dirread.c: TIFFFetchStripThing(): limit the number of items
1020 read in StripOffsets/StripByteCounts tags to the number of strips to avoid
1021 excessive memory allocation.
1022 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2215
1025 2017-06-12 Even Rouault <even.rouault at spatialys.com>
1027 * libtiff/tif_dirread.c: fix regression of libtiff 4.0.8 in
1028 ChopUpSingleUncompressedStrip() regarding update of newly single-strip
1029 uncompressed files whose bytecount is 0. Before the change of 2016-12-03,
1030 the condition bytecount==0 used to trigger an early exit/disabling of
1031 strip chop. Re-introduce that in update mode. Otherwise this cause
1032 later incorrect setting for the value of StripByCounts/StripOffsets.
1033 ( https://trac.osgeo.org/gdal/ticket/6924 )
1035 2017-06-10 Even Rouault <even.rouault at spatialys.com>
1037 * .appveyor.yml, .travis.yml, build/travis-ci: apply patches
1038 0001-ci-Travis-script-improvements.patch and
1039 0002-ci-Invoke-helper-script-via-shell.patch by Roger Leigh
1040 (sent to mailing list)
1042 2017-06-08 Even Rouault <even.rouault at spatialys.com>
1044 * .travis.yml, build/travis-ci: new files from
1045 0001-ci-Add-Travis-support-for-Linux-builds-with-Autoconf.patch by
1046 Roger Leigh (sent to mailing list on 2017-06-08)
1047 This patch adds support for the Travis-CI service.
1049 * .appveyor.yml: new file from
1050 0002-ci-Add-AppVeyor-support.patch by Roger Leigh (sent to mailing
1052 This patch adds a .appveyor.yml file to the top-level. This allows
1053 one to opt in to having a branch built on Windows with Cygwin,
1054 MinGW and MSVC automatically when a branch is pushed to GitHub,
1055 GitLab, BitBucket or any other supported git hosting service.
1057 * CMakeLists.txt, test/CMakeLists.txt, test/TiffTestCommon.cmake: apply
1058 patch 0001-cmake-Improve-Cygwin-and-MingGW-test-support.patch from Roger
1059 Leigh (sent to mailing list on 2017-06-08)
1060 This patch makes the CMake build system support running the tests
1061 with MinGW or Cygwin.
1063 2017-06-08 Even Rouault <even.rouault at spatialys.com>
1065 * libtiff/tif_swab.c: if DISABLE_CHECK_TIFFSWABMACROS is defined, do not do
1066 the #ifdef TIFFSwabXXX checks. Make it easier for GDAL to rename the symbols
1067 of its internal libtiff copy.
1069 2017-06-01 Even Rouault <even.rouault at spatialys.com>
1071 * libtiff/tif_dirinfo.c, tif_dirread.c: add _TIFFCheckFieldIsValidForCodec(),
1072 and use it in TIFFReadDirectory() so as to ignore fields whose tag is a
1073 codec-specified tag but this codec is not enabled. This avoids TIFFGetField()
1074 to behave differently depending on whether the codec is enabled or not, and
1075 thus can avoid stack based buffer overflows in a number of TIFF utilities
1076 such as tiffsplit, tiffcmp, thumbnail, etc.
1077 Patch derived from 0063-Handle-properly-CODEC-specific-tags.patch
1078 (http://bugzilla.maptools.org/show_bug.cgi?id=2580) by Raphaël Hertzog.
1080 http://bugzilla.maptools.org/show_bug.cgi?id=2580
1081 http://bugzilla.maptools.org/show_bug.cgi?id=2693
1082 http://bugzilla.maptools.org/show_bug.cgi?id=2625 (CVE-2016-10095)
1083 http://bugzilla.maptools.org/show_bug.cgi?id=2564 (CVE-2015-7554)
1084 http://bugzilla.maptools.org/show_bug.cgi?id=2561 (CVE-2016-5318)
1085 http://bugzilla.maptools.org/show_bug.cgi?id=2499 (CVE-2014-8128)
1086 http://bugzilla.maptools.org/show_bug.cgi?id=2441
1087 http://bugzilla.maptools.org/show_bug.cgi?id=2433
1089 2017-05-29 Even Rouault <even.rouault at spatialys.com>
1091 * libtiff/tif_getimage.c: initYCbCrConversion(): stricter validation for
1092 refBlackWhite coefficients values. To avoid invalid float->int32 conversion
1093 (when refBlackWhite[0] == 2147483648.f)
1094 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1907
1097 2017-05-29 Even Rouault <even.rouault at spatialys.com>
1099 * libtiff/tif_color.c: TIFFYCbCrToRGBInit(): stricter clamping to avoid
1100 int32 overflow in TIFFYCbCrtoRGB().
1101 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1844
1104 2017-05-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1106 * configure.ac: libtiff 4.0.8 released.
1108 * html/v4.0.8.html: Add description of changes targeting the 4.0.8
1111 2017-05-20 Even Rouault <even.rouault at spatialys.com>
1113 * libtiff/tif_getimage.c: initYCbCrConversion(): stricter validation for
1114 refBlackWhite coefficients values. To avoid invalid float->int32 conversion.
1115 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1718
1118 2017-05-18 Even Rouault <even.rouault at spatialys.com>
1120 * libtiff/tif_getimage.c: initYCbCrConversion(): check luma[1] is not zero
1121 to avoid division by zero.
1122 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1665
1125 2017-05-17 Even Rouault <even.rouault at spatialys.com>
1127 * libtiff/tif_read.c: _TIFFVSetField(): fix outside range cast of double to
1129 Credit to Google Autofuzz project
1131 2017-05-17 Even Rouault <even.rouault at spatialys.com>
1133 * libtiff/tif_getimage.c: initYCbCrConversion(): add basic validation of
1134 luma and refBlackWhite coefficients (just check they are not NaN for now),
1135 to avoid potential float to int overflows.
1136 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1663
1139 2017-05-17 Even Rouault <even.rouault at spatialys.com>
1141 * libtiff/tif_pixarlog.c: PixarLogDecode(): resync tif_rawcp with
1142 next_in and tif_rawcc with avail_in at beginning and end of function,
1143 similarly to what is done in LZWDecode(). Likely needed so that it
1144 works properly with latest chnges in tif_read.c in CHUNKY_STRIP_READ_SUPPORT
1145 mode. But untested...
1147 2017-05-17 Even Rouault <even.rouault at spatialys.com>
1149 * libtiff/tif_lzw.c: update dec_bitsleft at beginning of LZWDecode(),
1150 and update tif_rawcc at end of LZWDecode(). This is needed to properly
1151 work with the latest chnges in tif_read.c in CHUNKY_STRIP_READ_SUPPORT
1154 2017-05-14 Even Rouault <even.rouault at spatialys.com>
1156 * libtiff/tif_luv.c: LogL16InitState(): avoid excessive memory
1157 allocation when RowsPerStrip tag is missing.
1158 Credit to OSS-Fuzz (locally run, on GDAL)
1160 2017-05-14 Even Rouault <even.rouault at spatialys.com>
1162 * libtiff/tif_packbits.c: fix out-of-buffer read in PackBitsDecode()
1163 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1563
1166 2017-05-13 Even Rouault <even.rouault at spatialys.com>
1168 * libtiff/tif_pixarlog.c, tif_luv.c: avoid potential int32
1169 overflows in multiply_ms() and add_ms().
1170 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1558
1173 2017-05-13 Even Rouault <even.rouault at spatialys.com>
1175 * libtiff/tif_color.c: avoid potential int32 overflow in
1176 TIFFYCbCrToRGBInit()
1177 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1533
1180 2017-05-13 Even Rouault <even.rouault at spatialys.com>
1182 * libtiff/tif_read.c: update tif_rawcc in CHUNKY_STRIP_READ_SUPPORT
1183 mode with tif_rawdataloaded when calling TIFFStartStrip() or
1184 TIFFFillStripPartial(). This avoids reading beyond tif_rawdata
1185 when bytecount > tif_rawdatasize.
1186 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1545.
1189 2017-05-12 Even Rouault <even.rouault at spatialys.com>
1191 * libtiff/tif_read.c: TIFFFillStripPartial():
1192 avoid excessive memory allocation in case of shorten files.
1193 Only effective on 64 bit builds.
1194 Credit to OSS-Fuzz (locally run, on GDAL)
1196 2017-05-12 Even Rouault <even.rouault at spatialys.com>
1198 * libtiff/tif_read.c: TIFFFillStripPartial() / TIFFSeek(),
1199 avoid potential integer overflows with read_ahead in
1200 CHUNKY_STRIP_READ_SUPPORT mode. Should
1201 especially occur on 32 bit platforms.
1203 2017-05-10 Even Rouault <even.rouault at spatialys.com>
1205 * libtiff/tif_read.c: TIFFFillStrip() and TIFFFillTile():
1206 avoid excessive memory allocation in case of shorten files.
1207 Only effective on 64 bit builds and non-mapped cases.
1208 Credit to OSS-Fuzz (locally run, on GDAL)
1210 2017-05-10 Even Rouault <even.rouault at spatialys.com>
1212 * libtiff/tif_zip.c, tif_pixarlog.c, tif_predict.c: fix memory
1213 leak when the underlying codec (ZIP, PixarLog) succeeds its
1214 setupdecode() method, but PredictorSetup fails.
1215 Credit to OSS-Fuzz (locally run, on GDAL)
1217 2017-05-10 Even Rouault <even.rouault at spatialys.com>
1219 * libtiff/tif_read.c: TIFFFillStrip(): add limitation to the number
1220 of bytes read in case td_stripbytecount[strip] is bigger than
1221 reasonable, so as to avoid excessive memory allocation.
1223 2017-04-28 Even Rouault <even.rouault at spatialys.com>
1225 * tools/tiff2bw.c: close TIFF handle in error code path.
1226 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2677
1228 2017-04-27 Even Rouault <even.rouault at spatialys.com>
1230 * litiff/tif_fax3.c: avoid crash in Fax3Close() on empty file.
1231 Patch by Alan Coopersmith + complement by myself.
1232 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2673
1233 * tools/fax2tiff.c: emit appropriate message if the input file is
1234 empty. Patch by Alan Coopersmith.
1235 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2672
1237 2017-04-27 Even Rouault <even.rouault at spatialys.com>
1239 * libtiff/tif_ojpeg.c: fix potential memory leak in
1240 OJPEGReadHeaderInfoSecTablesQTable, OJPEGReadHeaderInfoSecTablesDcTable
1241 and OJPEGReadHeaderInfoSecTablesAcTable
1242 Patch by Nicolás Peña.
1243 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2670
1245 2017-04-27 Even Rouault <even.rouault at spatialys.com>
1247 * libtiff/tif_dirread.c: fix memory leak in non DEFER_STRILE_LOAD
1248 mode (ie default) when there is both a StripOffsets and
1249 TileOffsets tag, or a StripByteCounts and TileByteCounts
1250 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2689
1251 * tools/tiff2ps.c: call TIFFClose() in error code paths.
1253 2017-02-25 Even Rouault <even.rouault at spatialys.com>
1255 * libtiff/tif_fax3.c, tif_predict.c, tif_getimage.c: fix GCC 7
1256 -Wimplicit-fallthrough warnings.
1258 2017-02-18 Even Rouault <even.rouault at spatialys.com>
1260 * libtiff/tif_pixarlog.c: fix memory leak in error code path of
1261 PixarLogSetupDecode(). Patch by Nicolás Peña.
1262 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2665
1264 2017-02-18 Even Rouault <even.rouault at spatialys.com>
1266 * libtiff/tif_lzw.c: in LZWPostEncode(), increase, if necessary, the
1267 code bit-width after flushing the remaining code and before emitting
1269 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=1982
1271 2017-01-31 Even Rouault <even.rouault at spatialys.com>
1273 * libtiff/tif_jpeg.c: only run JPEGFixupTagsSubsampling() if the
1274 YCbCrSubsampling tag is not explicitly present. This helps a bit to reduce
1275 the I/O amount when te tag is present (especially on cloud hosted files).
1277 2017-01-14 Even Rouault <even.rouault at spatialys.com>
1279 * tools/raw2tiff.c: avoid integer division by zero.
1280 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2631
1282 2017-01-12 Even Rouault <even.rouault at spatialys.com>
1284 * libtiff/tif_ojpeg.c: fix leak in OJPEGReadHeaderInfoSecTablesQTable,
1285 OJPEGReadHeaderInfoSecTablesDcTable and OJPEGReadHeaderInfoSecTablesAcTable
1287 Patch by Nicolás Peña.
1288 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2659
1290 2017-01-11 Even Rouault <even.rouault at spatialys.com>
1292 * libtiff/tif_luv.c, tif_lzw.c, tif_packbits.c: return 0 in Encode
1293 functions instead of -1 when TIFFFlushData1() fails.
1294 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2130
1296 2017-01-11 Even Rouault <even.rouault at spatialys.com>
1298 * tools/tiffcp.c: error out cleanly in cpContig2SeparateByRow and
1299 cpSeparate2ContigByRow if BitsPerSample != 8 to avoid heap based overflow.
1300 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2656 and
1301 http://bugzilla.maptools.org/show_bug.cgi?id=2657
1303 2017-01-11 Even Rouault <even.rouault at spatialys.com>
1305 * libtiff/tiffio.h, tif_unix.c, tif_win32.c, tif_vms.c: add _TIFFcalloc()
1307 * libtiff/tif_read.c: TIFFReadBufferSetup(): use _TIFFcalloc() to zero
1308 initialize tif_rawdata.
1309 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2651
1311 2017-01-11 Even Rouault <even.rouault at spatialys.com>
1313 * libtiff/tif_getimage.c: add explicit uint32 cast in putagreytile to
1314 avoid UndefinedBehaviorSanitizer warning.
1315 Patch by Nicolás Peña.
1316 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2658
1318 2017-01-11 Even Rouault <even.rouault at spatialys.com>
1320 * libtiff/tif_read.c: avoid potential undefined behaviour on signed integer
1321 addition in TIFFReadRawStrip1() in isMapped() case.
1322 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2650
1324 2017-01-11 Even Rouault <even.rouault at spatialys.com>
1326 * libtiff/tif_jpeg.c: validate BitsPerSample in JPEGSetupEncode() to avoid
1327 undefined behaviour caused by invalid shift exponent.
1328 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2648
1330 2017-01-11 Even Rouault <even.rouault at spatialys.com>
1332 * libtiff/tif_dir.c, tif_dirread.c, tif_dirwrite.c: implement various clampings
1333 of double to other data types to avoid undefined behaviour if the output range
1334 isn't big enough to hold the input value.
1335 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2643
1336 http://bugzilla.maptools.org/show_bug.cgi?id=2642
1337 http://bugzilla.maptools.org/show_bug.cgi?id=2646
1338 http://bugzilla.maptools.org/show_bug.cgi?id=2647
1340 2017-01-11 Even Rouault <even.rouault at spatialys.com>
1342 * libtiff/tif_dirread.c: avoid division by floating point 0 in
1343 TIFFReadDirEntryCheckedRational() and TIFFReadDirEntryCheckedSrational(),
1344 and return 0 in that case (instead of infinity as before presumably)
1345 Apparently some sanitizers do not like those divisions by zero.
1346 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2644
1348 2017-01-11 Even Rouault <even.rouault at spatialys.com>
1350 * libtiff/tif_dirwrite.c: in TIFFWriteDirectoryTagCheckedRational, replace
1351 assertion by runtime check to error out if passed value is strictly
1353 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2535
1355 * tools/tiffcrop.c: remove extraneous TIFFClose() in error code path, that
1357 Related to http://bugzilla.maptools.org/show_bug.cgi?id=2535
1359 2017-01-11 Even Rouault <even.rouault at spatialys.com>
1361 * libtiff/tif_jpeg.c: avoid integer division by zero in
1362 JPEGSetupEncode() when horizontal or vertical sampling is set to 0.
1363 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2653
1365 2017-01-03 Even Rouault <even.rouault at spatialys.com>
1367 * libtiff/tif_jpeg.c: increase libjpeg max memory usable to
1368 10 MB instead of libjpeg 1MB default. This helps when creating files
1369 with "big" tile, without using libjpeg temporary files.
1370 Related to https://trac.osgeo.org/gdal/ticket/6757
1372 2016-12-20 Even Rouault <even.rouault at spatialys.com>
1374 * tools/tiff2pdf.c: avoid potential heap-based overflow in
1375 t2p_readwrite_pdf_image_tile().
1376 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2640
1378 2016-12-20 Even Rouault <even.rouault at spatialys.com>
1380 * tools/tiff2pdf.c: avoid potential invalid memory read in
1382 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2639
1384 2016-12-20 Even Rouault <even.rouault at spatialys.com>
1386 * tools/tiff2pdf.c: fix wrong usage of memcpy() that can trigger
1387 unspecified behaviour.
1388 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2638
1390 2016-12-18 Even Rouault <even.rouault at spatialys.com>
1392 * libtiff/tif_getimage.c: fix potential memory leaks in error code
1393 path of TIFFRGBAImageBegin().
1394 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2627
1396 2016-12-18 Even Rouault <even.rouault at spatialys.com>
1398 * tools/tiff2pdf.c: prevent heap-based buffer overflow in -j mode
1399 on a paletted image. Note: this fix errors out before the overflow
1400 happens. There could probably be a better fix.
1401 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2635
1403 2016-12-17 Even Rouault <even.rouault at spatialys.com>
1405 * libtiff/tiffio.h, libtiff/tif_getimage.c: add TIFFReadRGBAStripExt()
1406 and TIFFReadRGBATileExt() variants of the functions without ext, with
1407 an extra argument to control the stop_on_error behaviour.
1409 2016-12-17 Even Rouault <even.rouault at spatialys.com>
1411 * tools/tiff2ps.c: fix 2 heap-based buffer overflows (in PSDataBW
1412 and PSDataColorContig). Reported by Agostino Sarubbo.
1413 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2633 and
1414 http://bugzilla.maptools.org/show_bug.cgi?id=2634.
1416 2016-12-13 Even Rouault <even.rouault at spatialys.com>
1418 * libtiff/tif_fax3.h: revert change done on 2016-01-09 that made
1419 Param member of TIFFFaxTabEnt structure a uint16 to reduce size of
1420 the binary. It happens that the Hylafax software uses the tables that
1421 follow this typedef (TIFFFaxMainTable, TIFFFaxWhiteTable,
1422 TIFFFaxBlackTable), although they are not in a public libtiff header.
1423 Raised by Lee Howard.
1424 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2636
1426 2016-12-04 Even Rouault <even.rouault at spatialys.com>
1428 * html/man/Makefile.am: remove thumbnail.1.html and rgb2ycbcr.1.html
1429 from installed pages since the corresponding utilities are no longer
1430 installed. Reported by Havard Eidnes
1431 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2606
1433 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1435 * libtiff/tif_write.c: fix misleading indentation as warned by GCC.
1437 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1439 * tools/tiffcp.c: replace assert( (bps % 8) == 0 ) by a non assert check.
1440 Reported by Agostino Sarubbo.
1441 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2605
1443 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1445 * tools/tiffcp.c: fix uint32 underflow/overflow that can cause heap-based
1447 Reported by Agostino Sarubbo.
1448 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2610
1450 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1452 * tools/tiffcp.c: avoid potential division by zero is BitsPerSamples tag is
1454 Reported by Agostino Sarubbo.
1455 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2607
1457 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1459 * man/Makefile.am: remove thumbnail.1 and rgb2ycbcr.1 from installed man
1460 pages since the corresponding utilities are no longer installed.
1461 Reported by Havard Eidnes
1462 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2606
1464 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1466 * tools/tif_dir.c: when TIFFGetField(, TIFFTAG_NUMBEROFINKS, ) is called,
1467 limit the return number of inks to SamplesPerPixel, so that code that parses
1468 ink names doesn't go past the end of the buffer.
1469 Reported by Agostino Sarubbo.
1470 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2599
1472 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1474 * tools/tiffcp.c: avoid potential division by zero is BitsPerSamples tag is
1476 Reported by Agostino Sarubbo.
1477 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2597
1479 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1481 * tools/tiffinfo.c: fix null pointer dereference in -r mode when the image has
1482 no StripByteCount tag.
1483 Reported by Agostino Sarubbo.
1484 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2594
1486 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1488 * tools/tiffcrop.c: fix integer division by zero when BitsPerSample is missing.
1489 Reported by Agostino Sarubbo.
1490 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2619
1492 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1494 * tools/tiffcrop.c: add 3 extra bytes at end of strip buffer in
1495 readSeparateStripsIntoBuffer() to avoid read outside of heap allocated buffer.
1496 Reported by Agostino Sarubbo.
1497 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2621
1499 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1501 * tools/tiffcrop.c: fix readContigStripsIntoBuffer() in -i (ignore) mode so
1502 that the output buffer is correctly incremented to avoid write outside bounds.
1503 Reported by Agostino Sarubbo.
1504 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2620
1506 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1508 * libtiff/tif_ojpeg.c: make OJPEGDecode() early exit in case of failure in
1509 OJPEGPreDecode(). This will avoid a divide by zero, and potential other issues.
1510 Reported by Agostino Sarubbo.
1511 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2611
1513 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1515 * libtiff/tif_dirread.c: modify ChopUpSingleUncompressedStrip() to
1516 instanciate compute ntrips as TIFFhowmany_32(td->td_imagelength, rowsperstrip),
1517 instead of a logic based on the total size of data. Which is faulty is
1518 the total size of data is not sufficient to fill the whole image, and thus
1519 results in reading outside of the StripByCounts/StripOffsets arrays when
1520 using TIFFReadScanline().
1521 Reported by Agostino Sarubbo.
1522 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2608.
1524 * libtiff/tif_strip.c: revert the change in TIFFNumberOfStrips() done
1525 for http://bugzilla.maptools.org/show_bug.cgi?id=2587 / CVE-2016-9273 since
1526 the above change is a better fix that makes it unnecessary.
1528 2016-12-03 Even Rouault <even.rouault at spatialys.com>
1530 * libtiff/tif_pixarlog.c, libtiff/tif_luv.c: fix heap-based buffer
1531 overflow on generation of PixarLog / LUV compressed files, with
1532 ColorMap, TransferFunction attached and nasty plays with bitspersample.
1533 The fix for LUV has not been tested, but suffers from the same kind
1534 of issue of PixarLog.
1535 Reported by Agostino Sarubbo.
1536 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2604
1538 2016-12-02 Even Rouault <even.rouault at spatialys.com>
1540 * tools/tiffcp.c: avoid uint32 underflow in cpDecodedStrips that
1541 can cause various issues, such as buffer overflows in the library.
1542 Reported by Agostino Sarubbo.
1543 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2598
1545 2016-12-02 Even Rouault <even.rouault at spatialys.com>
1547 * libtiff/tif_read.c, libtiff/tiffiop.h: fix uint32 overflow in
1548 TIFFReadEncodedStrip() that caused an integer division by zero.
1549 Reported by Agostino Sarubbo.
1550 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2596
1552 2016-11-20 Even Rouault <even.rouault at spatialys.com>
1554 * libtiff/tif_getimage.c, libtiff/tif_open.c: add parenthesis to
1555 fix cppcheck clarifyCalculation warnings
1556 * libtiff/tif_predict.c, libtiff/tif_print.c: fix printf unsigned
1557 vs signed formatting (cppcheck invalidPrintfArgType_uint warnings)
1559 2016-11-20 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1561 * tools/fax2tiff.c (main): Applied patch by Jörg Ahrens to fix
1562 passing client data for Win32 builds using tif_win32.c
1563 (USE_WIN32_FILEIO defined) for file I/O. Patch was provided via
1564 email on November 20, 2016.
1566 2016-11-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1568 * libtiff 4.0.7 released.
1570 * configure.ac: Update for 4.0.7 release.
1572 * tools/tiffdump.c (ReadDirectory): Remove uint32 cast to
1573 _TIFFmalloc() argument which resulted in Coverity report. Added
1574 more mutiplication overflow checks.
1576 2016-11-18 Even Rouault <even.rouault at spatialys.com>
1578 * tools/tiffcrop.c: Fix memory leak in (recent) error code path.
1579 Fixes Coverity 1394415.
1581 2016-11-17 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1583 * libtiff/tif_getimage.c: Fix some benign warnings which appear in
1584 64-bit compilation under Microsoft Visual Studio of the form
1585 "Arithmetic overflow: 32-bit value is shifted, then cast to 64-bit
1586 value. Results might not be an expected value.". Problem was
1587 reported on November 16, 2016 on the tiff mailing list.
1589 2016-11-16 Even Rouault <even.rouault at spatialys.com>
1591 * libtiff/tif_dirread.c: in TIFFFetchNormalTag(), do not dereference
1592 NULL pointer when values of tags with TIFF_SETGET_C16_ASCII / TIFF_SETGET_C32_ASCII
1593 access are 0-byte arrays.
1594 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2593 (regression introduced
1595 by previous fix done on 2016-11-11 for CVE-2016-9297).
1596 Reported by Henri Salo. Assigned as CVE-2016-9448
1598 2016-11-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1600 * tools/tiffinfo.c (TIFFReadContigTileData): Fix signed/unsigned
1602 (TIFFReadSeparateTileData): Fix signed/unsigned comparison
1605 * tools/tiffcrop.c (readContigTilesIntoBuffer): Fix
1606 signed/unsigned comparison warning.
1608 * html/v4.0.7.html: Add a file to document the pending 4.0.7
1611 2016-11-11 Even Rouault <even.rouault at spatialys.com>
1613 * tools/tiff2pdf.c: avoid undefined behaviour related to overlapping
1614 of source and destination buffer in memcpy() call in
1615 t2p_sample_rgbaa_to_rgb()
1616 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2577
1618 2016-11-11 Even Rouault <even.rouault at spatialys.com>
1620 * tools/tiff2pdf.c: fix potential integer overflows on 32 bit builds
1621 in t2p_read_tiff_size()
1622 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2576
1624 2016-11-11 Even Rouault <even.rouault at spatialys.com>
1626 * libtiff/tif_aux.c: fix crash in TIFFVGetFieldDefaulted()
1627 when requesting Predictor tag and that the zip/lzw codec is not
1629 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2591
1631 2016-11-11 Even Rouault <even.rouault at spatialys.com>
1633 * libtiff/tif_dirread.c: in TIFFFetchNormalTag(), make sure that
1634 values of tags with TIFF_SETGET_C16_ASCII / TIFF_SETGET_C32_ASCII
1635 access are null terminated, to avoid potential read outside buffer
1636 in _TIFFPrintField().
1637 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2590 (CVE-2016-9297)
1639 2016-11-11 Even Rouault <even.rouault at spatialys.com>
1641 * libtiff/tif_dirread.c: reject images with OJPEG compression that
1642 have no TileOffsets/StripOffsets tag, when OJPEG compression is
1643 disabled. Prevent null pointer dereference in TIFFReadRawStrip1()
1644 and other functions that expect td_stripbytecount to be non NULL.
1645 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2585
1647 2016-11-11 Even Rouault <even.rouault at spatialys.com>
1649 * tools/tiffcrop.c: fix multiple uint32 overflows in
1650 writeBufferToSeparateStrips(), writeBufferToContigTiles() and
1651 writeBufferToSeparateTiles() that could cause heap buffer overflows.
1652 Reported by Henri Salo from Nixu Corporation.
1653 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2592 (CVE-2016-9532)
1655 2016-11-10 Even Rouault <even.rouault at spatialys.com>
1657 * libtiff/tif_strip.c: make TIFFNumberOfStrips() return the td->td_nstrips
1658 value when it is non-zero, instead of recomputing it. This is needed in
1659 TIFF_STRIPCHOP mode where td_nstrips is modified. Fixes a read outsize of
1660 array in tiffsplit (or other utilities using TIFFNumberOfStrips()).
1661 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2587 (CVE-2016-9273)
1663 2016-11-04 Even Rouault <even.rouault at spatialys.com>
1665 * libtiff/tif_predic.c: fix memory leaks in error code paths added in
1666 previous commit (fix for MSVR 35105)
1668 2016-10-31 Even Rouault <even.rouault at spatialys.com>
1670 * libtiff/tif_predict.h, libtiff/tif_predict.c:
1671 Replace assertions by runtime checks to avoid assertions in debug mode,
1672 or buffer overflows in release mode. Can happen when dealing with
1673 unusual tile size like YCbCr with subsampling. Reported as MSVR 35105
1674 by Axel Souchet & Vishal Chauhan from the MSRC Vulnerabilities & Mitigations
1677 2016-10-26 Even Rouault <even.rouault at spatialys.com>
1679 * tools/fax2tiff.c: fix segfault when specifying -r without
1680 argument. Patch by Yuriy M. Kaminskiy.
1681 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2572
1683 2016-10-25 Even Rouault <even.rouault at spatialys.com>
1685 * libtiff/tif_dir.c: discard values of SMinSampleValue and
1686 SMaxSampleValue when they have been read and the value of
1687 SamplesPerPixel is changed afterwards (like when reading a
1688 OJPEG compressed image with a missing SamplesPerPixel tag,
1689 and whose photometric is RGB or YCbCr, forcing SamplesPerPixel
1690 being 3). Otherwise when rewriting the directory (for example
1691 with tiffset, we will expect 3 values whereas the array had been
1692 allocated with just one), thus causing a out of bound read access.
1693 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2500
1694 (CVE-2014-8127, duplicate: CVE-2016-3658)
1696 * libtiff/tif_dirwrite.c: avoid null pointer dereference on td_stripoffset
1697 when writing directory, if FIELD_STRIPOFFSETS was artificially set
1698 for a hack case in OJPEG case.
1699 Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2500
1700 (CVE-2014-8127, duplicate: CVE-2016-3658)
1702 2016-10-25 Even Rouault <even.rouault at spatialys.com>
1704 * tools/tiffinfo.c: fix out-of-bound read on some tiled images.
1705 (http://bugzilla.maptools.org/show_bug.cgi?id=2517)
1707 * libtiff/tif_compress.c: make TIFFNoDecode() return 0 to indicate an
1708 error and make upper level read routines treat it accordingly.
1709 (linked to the test case of http://bugzilla.maptools.org/show_bug.cgi?id=2517)
1711 2016-10-14 Even Rouault <even.rouault at spatialys.com>
1713 * tools/tiffcrop.c: fix out-of-bound read of up to 3 bytes in
1714 readContigTilesIntoBuffer(). Reported as MSVR 35092 by Axel Souchet
1715 & Vishal Chauhan from the MSRC Vulnerabilities & Mitigations team.
1717 2016-10-09 Even Rouault <even.rouault at spatialys.com>
1719 * tools/tiff2pdf.c: fix write buffer overflow of 2 bytes on JPEG
1720 compressed images. Reported by Tyler Bohan of Cisco Talos as
1721 TALOS-CAN-0187 / CVE-2016-5652.
1722 Also prevents writing 2 extra uninitialized bytes to the file stream.
1724 2016-10-08 Even Rouault <even.rouault at spatialys.com>
1726 * tools/tiffcp.c: fix out-of-bounds write on tiled images with odd
1727 tile width vs image width. Reported as MSVR 35103
1728 by Axel Souchet and Vishal Chauhan from the MSRC Vulnerabilities &
1731 2016-10-08 Even Rouault <even.rouault at spatialys.com>
1733 * tools/tiff2pdf.c: fix read -largely- outsize of buffer in
1734 t2p_readwrite_pdf_image_tile(), causing crash, when reading a
1735 JPEG compressed image with TIFFTAG_JPEGTABLES length being one.
1736 Reported as MSVR 35101 by Axel Souchet and Vishal Chauhan from
1737 the MSRC Vulnerabilities & Mitigations team. CVE-2016-9453
1739 2016-10-08 Even Rouault <even.rouault at spatialys.com>
1741 * tools/tiffcp.c: fix read of undefined variable in case of missing
1742 required tags. Found on test case of MSVR 35100.
1743 * tools/tiffcrop.c: fix read of undefined buffer in
1744 readContigStripsIntoBuffer() due to uint16 overflow. Probably not a
1745 security issue but I can be wrong. Reported as MSVR 35100 by Axel
1746 Souchet from the MSRC Vulnerabilities & Mitigations team.
1748 2016-09-25 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1750 * html: Change as many remotesensing.org broken links to a working
1753 2016-09-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1755 * libtiff/tif_getimage.c (TIFFRGBAImageOK): Reject attempts to
1756 read floating point images.
1758 * libtiff/tif_predict.c (PredictorSetup): Enforce bits-per-sample
1759 requirements of floating point predictor (3). Fixes CVE-2016-3622
1760 "Divide By Zero in the tiff2rgba tool."
1762 2016-09-23 Even Rouault <even.rouault at spatialys.com>
1764 * tools/tiffcrop.c: fix various out-of-bounds write vulnerabilities
1765 in heap or stack allocated buffers. Reported as MSVR 35093,
1766 MSVR 35096 and MSVR 35097. Discovered by Axel Souchet and Vishal
1767 Chauhan from the MSRC Vulnerabilities & Mitigations team.
1768 * tools/tiff2pdf.c: fix out-of-bounds write vulnerabilities in
1769 heap allocate buffer in t2p_process_jpeg_strip(). Reported as MSVR
1770 35098. Discovered by Axel Souchet and Vishal Chauhan from the MSRC
1771 Vulnerabilities & Mitigations team.
1772 * libtiff/tif_pixarlog.c: fix out-of-bounds write vulnerabilities
1773 in heap allocated buffers. Reported as MSVR 35094. Discovered by
1774 Axel Souchet and Vishal Chauhan from the MSRC Vulnerabilities &
1776 * libtiff/tif_write.c: fix issue in error code path of TIFFFlushData1()
1777 that didn't reset the tif_rawcc and tif_rawcp members. I'm not
1778 completely sure if that could happen in practice outside of the odd
1779 behaviour of t2p_seekproc() of tiff2pdf). The report points that a
1780 better fix could be to check the return value of TIFFFlushData1() in
1781 places where it isn't done currently, but it seems this patch is enough.
1782 Reported as MSVR 35095. Discovered by Axel Souchet & Vishal Chauhan &
1783 Suha Can from the MSRC Vulnerabilities & Mitigations team.
1785 2016-09-20 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1787 * html/man/index.html: Comment out links to documentation for
1788 abandoned utilities.
1790 2016-09-17 Even Rouault <even.rouault at spatialys.com>
1792 * libtiff/tif_lzma.c: typo fix in comment
1794 2016-09-04 Even Rouault <even.rouault at spatialys.com>
1796 * libtiff/*.c: fix warnings raised by clang 3.9 -Wcomma
1798 2016-09-03 Even Rouault <even.rouault at spatialys.com>
1800 * libtiff/tif_dirwrite.c, libtiff/tif_color.c: fix warnings raised
1801 by GCC 5 / clang -Wfloat-conversion
1803 2016-08-16 Even Rouault <even.rouault at spatialys.com>
1805 * tools/tiffcrop.c: fix C99'ism.
1807 2016-08-15 Even Rouault <even.rouault at spatialys.com>
1809 * tools/tiff2bw.c: fix weight computation that could result of color
1810 value overflow (no security implication). Fix bugzilla #2550.
1811 Patch by Frank Freudenberg.
1813 2016-08-15 Even Rouault <even.rouault at spatialys.com>
1815 * tools/rgb2ycbcr.c: validate values of -v and -h parameters to
1816 avoid potential divide by zero. Fixes CVE-2016-3623 (bugzilla #2569)
1818 2016-08-15 Even Rouault <even.rouault at spatialys.com>
1820 * tools/tiffcrop.c: Fix out-of-bounds write in loadImage().
1821 From patch libtiff-CVE-2016-3991.patch from
1822 libtiff-4.0.3-25.el7_2.src.rpm by Nikola Forro (bugzilla #2543)
1824 2016-08-15 Even Rouault <even.rouault at spatialys.com>
1826 * libtiff/tif_pixarlog.c: Fix write buffer overflow in PixarLogEncode
1827 if more input samples are provided than expected by PixarLogSetupEncode.
1828 Idea based on libtiff-CVE-2016-3990.patch from
1829 libtiff-4.0.3-25.el7_2.src.rpm by Nikola Forro, but with different and
1830 simpler check. (bugzilla #2544)
1832 2016-08-15 Even Rouault <even.rouault at spatialys.com>
1834 * tools/tiff2rgba.c: Fix integer overflow in size of allocated
1835 buffer, when -b mode is enabled, that could result in out-of-bounds
1836 write. Based initially on patch tiff-CVE-2016-3945.patch from
1837 libtiff-4.0.3-25.el7_2.src.rpm by Nikola Forro, with correction for
1838 invalid tests that rejected valid files. (bugzilla #2545)
1840 2016-07-11 Even Rouault <even.rouault at spatialys.com>
1842 * tools/tiffcrop.c: Avoid access outside of stack allocated array
1843 on a tiled separate TIFF with more than 8 samples per pixel.
1844 Reported by Kaixiang Zhang of the Cloud Security Team, Qihoo 360
1845 (CVE-2016-5321 / CVE-2016-5323 , bugzilla #2558 / #2559)
1847 2016-07-10 Even Rouault <even.rouault at spatialys.com>
1849 * libtiff/tif_read.c: Fix out-of-bounds read on
1850 memory-mapped files in TIFFReadRawStrip1() and TIFFReadRawTile1()
1851 when stripoffset is beyond tmsize_t max value (reported by
1854 2016-07-10 Even Rouault <even.rouault at spatialys.com>
1856 * tools/tiffdump.c: fix a few misaligned 64-bit reads warned
1859 2016-07-03 Even Rouault <even.rouault at spatialys.com>
1861 * libtiff/tif_read.c: make TIFFReadEncodedStrip() and
1862 TIFFReadEncodedTile() directly use user provided buffer when
1863 no compression (and other conditions) to save a memcpy().
1865 * libtiff/tif_write.c: make TIFFWriteEncodedStrip() and
1866 TIFFWriteEncodedTile() directly use user provided buffer when
1867 no compression to save a memcpy().
1869 2016-07-01 Even Rouault <even.rouault at spatialys.com>
1871 * libtiff/tif_luv.c: validate that for COMPRESSION_SGILOG and
1872 PHOTOMETRIC_LOGL, there is only one sample per pixel. Avoid
1873 potential invalid memory write on corrupted/unexpected images when
1874 using the TIFFRGBAImageBegin() interface (reported by
1877 2016-06-28 Even Rouault <even.rouault at spatialys.com>
1879 * libtiff/tif_pixarlog.c: fix potential buffer write overrun in
1880 PixarLogDecode() on corrupted/unexpected images (reported by Mathias Svensson)
1883 2016-06-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1885 * libtiff/libtiff.def: Added _TIFFMultiply32 and _TIFFMultiply64
1888 2016-06-05 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1890 * tools/Makefile.am: The libtiff tools bmp2tiff, gif2tiff,
1891 ras2tiff, sgi2tiff, sgisv, and ycbcr are completely removed from
1892 the distribution. The libtiff tools rgb2ycbcr and thumbnail are
1893 only built in the build tree for testing. Old files are put in
1894 new 'archive' subdirectory of the source repository, but not in
1895 distribution archives. These changes are made in order to lessen
1896 the maintenance burden.
1898 2016-05-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1900 * libtiff/tif_config.vc.h (HAVE_SNPRINTF): Add a '1' to the
1901 HAVE_SNPRINTF definition.'
1903 2016-05-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1905 * libtiff/tif_config.vc.h (HAVE_SNPRINTF): Applied patch by Edward
1906 Lam to define HAVE_SNPRINTF for Visual Studio 2015.
1908 2016-04-27 Even Rouault <even.rouault at spatialys.com>
1910 * libtiff/tif_dirread.c: when compiled with DEFER_STRILE_LOAD,
1911 fix regression, introduced on 2014-12-23, when reading a one-strip
1912 file without a StripByteCounts tag. GDAL #6490
1914 2016-04-07 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1916 * html/bugs.html: Replace Andrey Kiselev with Bob Friesenhahn for
1917 purposes of security issue reporting.
1919 2016-01-23 Even Rouault <even.rouault at spatialys.com>
1921 * libtiff/*: upstream typo fixes (mostly contributed by Kurt Schwehr)
1922 coming from GDAL internal libtiff
1924 2016-01-09 Even Rouault <even.rouault at spatialys.com>
1926 * libtiff/tif_fax3.h: make Param member of TIFFFaxTabEnt structure
1927 a uint16 to reduce size of the binary.
1929 2016-01-03 Even Rouault <even.rouault at spatialys.com>
1931 * libtiff/tif_read.c, tif_dirread.c: fix indentation issues raised
1932 by GCC 6 -Wmisleading-indentation
1934 2015-12-27 Even Rouault <even.rouault at spatialys.com>
1936 * libtiff/tif_pixarlog.c: avoid zlib error messages to pass a NULL
1937 string to %s formatter, which is undefined behaviour in sprintf().
1939 2015-12-27 Even Rouault <even.rouault at spatialys.com>
1941 * libtiff/tif_next.c: fix potential out-of-bound write in NeXTDecode()
1942 triggered by http://lcamtuf.coredump.cx/afl/vulns/libtiff5.tif
1945 2015-12-27 Even Rouault <even.rouault at spatialys.com>
1947 * libtiff/tif_luv.c: fix potential out-of-bound writes in decode
1948 functions in non debug builds by replacing assert()s by regular if
1949 checks (bugzilla #2522).
1950 Fix potential out-of-bound reads in case of short input data.
1952 2015-12-26 Even Rouault <even.rouault at spatialys.com>
1954 * libtiff/tif_getimage.c: fix out-of-bound reads in TIFFRGBAImage
1955 interface in case of unsupported values of SamplesPerPixel/ExtraSamples
1956 for LogLUV / CIELab. Add explicit call to TIFFRGBAImageOK() in
1957 TIFFRGBAImageBegin(). Fix CVE-2015-8665 reported by limingxing and
1958 CVE-2015-8683 reported by zzf of Alibaba.
1960 2015-12-21 Even Rouault <even.rouault at spatialys.com>
1962 * libtiff/tif_dirread.c: workaround false positive warning of Clang Static
1963 Analyzer about null pointer dereference in TIFFCheckDirOffset().
1965 2015-12-19 Even Rouault <even.rouault at spatialys.com>
1967 * libtiff/tif_fax3.c: remove dead assignment in Fax3PutEOLgdal(). Found
1968 by Clang Static Analyzer
1970 2015-12-18 Even Rouault <even.rouault at spatialys.com>
1972 * libtiff/tif_dirwrite.c: fix truncation to 32 bit of file offsets in
1973 TIFFLinkDirectory() and TIFFWriteDirectorySec() when aligning directory
1974 offsets on a even offset (affects BigTIFF). This was a regression of the
1975 changeset of 2015-10-19.
1977 2015-12-12 Even Rouault <even.rouault at spatialys.com>
1979 * libtiff/tif_write.c: TIFFWriteEncodedStrip() and TIFFWriteEncodedTile()
1980 should return -1 in case of failure of tif_encodestrip() as documented
1981 * libtiff/tif_dumpmode.c: DumpModeEncode() should return 0 in case of
1982 failure so that the above mentionned functions detect the error.
1984 2015-12-06 Even Rouault <even.rouault at spatialys.com>
1986 * libtiff/uvcode.h: const'ify uv_code array
1988 2015-12-06 Even Rouault <even.rouault at spatialys.com>
1990 * libtiff/tif_dirinfo.c: const'ify tiffFields, exifFields,
1991 tiffFieldArray and exifFieldArray arrays
1993 2015-12-06 Even Rouault <even.rouault at spatialys.com>
1995 * libtiff/tif_print.c: constify photoNames and orientNames arrays
1997 2015-12-06 Even Rouault <even.rouault at spatialys.com>
1999 * libtiff/tif_close.c, libtiff/tif_extension.c : rename link
2000 variable to avoid -Wshadow warnings
2002 2015-11-22 Even Rouault <even.rouault at spatialys.com>
2004 * libtiff/*.c: fix typos in comments (patch by Kurt Schwehr)
2006 2015-11-22 Even Rouault <even.rouault at spatialys.com>
2008 * libtiff/*.c: fix MSVC warnings related to cast shortening and
2009 assignment within conditional expression
2011 2015-11-18 Even Rouault <even.rouault at spatialys.com>
2013 * libtiff/*.c: fix clang -Wshorten-64-to-32 warnings
2015 2015-11-18 Even Rouault <even.rouault at spatialys.com>
2017 * libtiff/tif_dirread.c: initialize double* data at line 3693 to NULL
2020 2015-11-17 Even Rouault <even.rouault at spatialys.com>
2022 * libtiff/tif_dirread.c: prevent reading ColorMap or TransferFunction
2023 if BitsPerPixel > 24, so as to avoid huge memory allocation and file
2026 2015-11-02 Even Rouault <even.rouault at spatialys.com>
2028 * libtiff/tif_dirread.c: remove duplicated assignment (reported by
2029 Clang static analyzer)
2031 2015-10-28 Even Rouault <even.rouault at spatialys.com>
2033 * libtiff/tif_dir.c, libtiff/tif_dirinfo.c, libtiff/tif_compress.c,
2034 libtiff/tif_jpeg_12.c: suppress warnings about 'no previous
2035 declaration/prototype'
2037 2015-10-19 Even Rouault <even.rouault at spatialys.com>
2039 * libtiff/tiffiop.h, libtiff/tif_dirwrite.c: suffix constants by U to fix
2040 'warning: negative integer implicitly converted to unsigned type' warning
2041 (part of -Wconversion)
2043 2015-10-17 Even Rouault <even.rouault at spatialys.com>
2045 * libtiff/tif_dir.c, libtiff/tif_dirread.c, libtiff/tif_getimage.c,
2046 libtiff/tif_print.c: fix -Wshadow warnings (only in libtiff/)
2048 2015-09-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2050 * libtiff 4.0.6 released.
2052 * html/v4.0.6.html: Added release notes for 4.0.6.
2054 2015-09-06 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2056 * tools/tiffgt.c: Silence glut API deprecation warnings on MacOS
2057 X. Patch by Roger Leigh.
2059 * Makefile.am: Added a 'coverity' rule to assist with Coverity
2062 * tools/tiff2pdf.c: Fix compiler warning about unused function
2063 when JPEG is not available.
2065 * tools/fax2ps.c (main): Detect failure to write to temporary
2068 2015-09-05 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2070 * libtiff/tif_dirread.c (TIFFReadDirEntryCheckRangeSlongSlong8):
2071 Change implementation so that it does not sometimes overflow the
2072 range of a 32-bit int and to avoid a signed vs unsigned compare
2074 (TIFF_INT64_MAX): Avoid use of platform-specific large constants.
2075 (TIFF_UINT32_MAX): Avoid use of platform-specific large constants.
2077 2015-09-01 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2079 * Makefile.am (distcheck-hook), configure.ac: Applied patches by
2080 Roger Leigh (via tiff mailing list on 2015-09-01) to fix issue
2081 with BSD make and to make use of cmake in 'distcheck' target
2082 conditional on if cmake is available.
2084 * CMakeLists.txt, Makefile.am, configure.ac: Applied patches by
2085 Roger Leigh (via tiff mailing list on 2015-09-01).
2087 CMake build is now included in 'distcheck' target.
2089 Builds with CMake 2.8.9 and newer.
2091 Tar is now resquested to use POSIX PAX format.
2093 2015-08-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2095 * CMakeLists.txt, libtiff/test/Makefile.am: Applied patches by
2096 Roger Leigh (via tiff mailing list on 2015-08-31.
2098 CMake reads all version information directly from configure.ac to
2099 avoid duplication of values. This basically greps over the file
2100 for the LIBTIFF_* variables, then translates them to the form
2101 needed for cmake. This includes the release version and libtool
2102 shared library version information.
2104 Make shared/static library building configurable. Currently it
2105 always builds shared libraries, with static libs having a _static
2106 suffix (copying zlib, but it means it's got a non-standard name).
2107 CMake has a -DBUILD_SHARED_LIBS=ON|OFF option to select one or the
2108 other, which is now used instead. There's now a single "tiff"
2109 target to build either shared or static as required, and all the
2110 tests and tools are linked with this. Note: the Windows tests fail
2111 when linked with a static libtiff (says: libtiff.dll not found).
2112 Not really a regression since this was not tested up to this
2113 point, and it's likely the unit tests haven't (ever?) been run on
2114 Windows with a static libtiff, so there's some additional
2115 portability issue here to address. Works fine on UNIX systems,
2116 and fine on Windows with the default to build a DLL.
2118 Add a missing file which wasn't being distributed, causing unit
2119 tests to fail. Note that "find . -name '*.cmake'" lists all the
2120 CMake files which need distributing in addition to all the
2121 CMakeLists.txt files (which now are distributed).
2123 2015-08-31 Even Rouault <even.rouault at spatialys.com>
2125 * libtiff/tif_predict.c: pedantic change to add explicit masking
2126 with 0xff before casting to uchar in floating-point horizontal
2127 differencing and accumulation routines.
2129 2015-08-31 Even Rouault <even.rouault at spatialys.com>
2131 * libtiff/tif_predict.c: fix generation of output with 16 bit
2132 or 32 bit integer, when byte swapping is needed, in
2133 horizontal predictor (#2521). Also fixes decoding when there is
2134 a single pixel to code (unlikely case...) and byte swapping is
2137 2015-08-30 Even Rouault <even.rouault at spatialys.com>
2139 * libtiff/tif_lzw.c: make nextdata a unsigned type to avoid
2140 undefined behaviour with shifts (gcc -fsanitize=shift)
2142 2015-08-30 Even Rouault <even.rouault at spatialys.com>
2144 * libtiff/tif_fax3.c, libtiff/tif_lzw.c, libtiff/tif_predict.c:
2145 add explicit masking with 0xff before casting
2146 to unsigned char (make icc -check=conversions happy)
2148 * libtiff/tif_predict.c: operate on unsigned datatypes when
2149 computing/applying differences to avoid undefined behaviour of
2150 signed types (C standard compliance)
2152 2015-08-30 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2154 * configure.ac: libtiff 4.0.5 released.
2156 2015-08-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2158 * CMakeLists.txt: Applied patch by Roger Leigh (via tiff mailing
2159 list on 2015-08-29) to add ld-version-script option to cmake build
2160 to match autoconf. Note: defaults to 'on' to be ABI-compatible by
2161 default with common Linux distribution builds. Note that the
2162 autoconf configure script defaults to 'off'.
2164 * html/build.html: Applied patch by Roger Leigh (via tiff mailing
2165 list on 2015-08-29) to describe how to use CMake to build libtiff.
2167 2015-08-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2169 * html/v4.0.5.html: Added HTML file describing the changes which
2170 will appear in the 4.0.5 release.
2172 2015-08-23 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2174 * libtiff/tiffiop.h: For MinGW comiles, make sure that build
2175 supports necessary __MSVCRT_VERSION__ (at least at least 0x800).
2176 Otherwise large files can not be supported for POSIX-style I/O.
2178 * tools/fax2tiff.c (main): Eliminate a compiler warning in 64-bit
2179 builds about cast to thandle_t.
2181 * test/rewrite_tag.c (main): Does not require any arguments.
2183 2015-08-20 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2185 * tools/CMakeLists.txt, port/snprintf.c: Patch by Roger Leigh to
2186 fix build issues when using Cmake due to Windows large file
2189 2015-08-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2191 * libtiff/tiffiop.h: First cut at supporting large files under
2192 Microsoft Windows using tif_unix.c and the libtiff tools. This
2193 only works if the Windows CDK is new enough to support the APIs
2194 used (Visual C++ 2005 or later). Support for large files is not
2195 actually tested yet.
2197 2015-08-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2199 * libtiff/tif_jpeg.c: Applied patch by Räisä Olli to assure that
2200 client_data is initialized to a known value, and to report an
2201 error on two memory allocation failures.
2203 2015-08-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2205 * CMakeLists.txt: Applied patch by Roger Leigh to fix libtiffxx
2206 symbol versioning. Patch was mailed to libtiff list on Thu, 13
2209 2015-07-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2211 * cmake: Add d suffix to debug libraries with MSVC. Patch #3 of 3
2212 by Roger Leigh posted to tiff list on Wed, 1 Jul 2015 15:58:20
2215 * cmake: Add extra warning flags. Patch #2 of 3 by Roger Leigh
2216 posted to tiff list on Wed, 1 Jul 2015 15:58:20 +0100.
2218 * cmake: Correct snprintf fallback for VS2015. Patch #1 of 3 by
2219 Roger Leigh posted to tiff list on Wed, 1 Jul 2015 15:58:20 +0100.
2221 2015-06-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2223 * CMakeLists.txt: Add CMake patchset by Roger Leigh as posted to
2224 libtiff mailing list on Mon, 22 Jun 2015 21:21:01 +0100. Several
2225 corrections to ensure that the autotools build still works were
2226 added by me. I have not yet tested the build using 'cmake' or
2229 2015-06-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2231 * test/Makefile.am: tiff2rgba-quad-tile.jpg.sh depends on the JPEG
2232 library so only execute if JPEG is available.
2234 * libtiff 4.0.4 released.
2236 * configure.ac: Add a HAVE_FOO Automake conditional for each
2239 * test/Makefile.am (JPEG_DEPENDENT_CHECK_PROG): raw_decode
2240 requires JPEG support to compile. Use Automake conditional to
2241 only include it when JPEG support is available.
2243 * html/build.html: Try to improve the nmake-based VC++ build
2246 * libtiff/tiffconf.vc.h: Build fixes based on testing.
2248 * libtiff/tif_config.vc.h: Build fixes based on testing.
2250 * libtiff/libtiff.def: TIFFRasterScanline does not exist so remove
2253 2015-06-20 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2255 * libtiff/tif_config.vc.h: Make adjustments to match the new
2256 definitions that configure produces, including for WIN64. Still
2259 * configure.ac: For 64-bit MinGW, fix SSIZE_FORMAT formatting
2260 specifier. 64-bit MinGW supports 'long long' but support for
2261 'lld' is not assured by the run-time DLLs and so GCC warns.
2262 Add TIFF_SIZE_T and TIFF_SIZE_FORMAT to provide a type definition
2263 and printf format specifier to deal with printing values of
2264 'size_t' type. In particular, this was necessary for WIN64.
2265 Added a configure test for if the system headers provide 'optarg'
2266 (normal case) and block out the many explicit 'extern' statements
2267 in the utilities. This was found to be necessary under Windows
2268 when getopt is in a DLL and the symbols are already imported with
2269 dllimport via standard header files.
2271 * test/raw_decode.c (XMD_H): Avoid conflicting typedefs for INT32
2272 and boolean in MinGW build due to including jpeglib.h.
2274 * test/rewrite_tag.c (main): Fix problem with location of variable
2277 * libtiff/libtiff.def: Added exports for TIFFGetConfiguredCODECs,
2278 TIFFReadRGBAImageOriented, TIFFSetCompressionScheme,
2279 TIFFSwabArrayOfTriples, TIFFVGetFieldDefaulted, _TIFFCheckRealloc,
2280 TIFFRasterScanline, TIFFSetErrorHandlerExt,
2281 TIFFSetWarningHandlerExt, TIFFNumberOfDirectories,
2282 TIFFCreateCustomDirectory, TIFFCreateEXIFDirectory,
2283 TIFFWriteCustomDirectory, _TIFFRewriteField as recommended by
2284 Roger Leigh and justified by use in libtiff tests, documentation,
2285 and changelog notes. Also sorted symbol list and removed
2288 2015-06-16 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2290 * libtiff/tif_getimage.c: Fix four Coverity issues related to
2291 unintended sign extension.
2293 2015-06-16 Even Rouault <even.rouault at spatialys.com>
2295 * libtiff/tif_unix.c: fix compilation with MSVC (fix by Jeff McKenna)
2297 2015-06-14 Lee Howard <faxguy@howardsilvan.com>
2299 * libtiff/tif_unix.c: contribution from Vadim Zeitlin on
2300 Bugzilla Bug #2510 fixes several harmless but still annoying
2303 * configure: contribution from Ludolf Holzheid on Bugzilla
2304 Bug #2498. Adds an option to select the file I/O style on
2307 * libtiff/tif_getimage.c: contribution from Gary Cramblitt
2308 on Bugzilla Bug #2409. Correct reading of certain tiled TIFFs.
2310 * configure, configure.ac: contribution from Marcos H. Woehrmann
2311 on Bugzilla Bug #2405. Correct shell equality operator.
2313 * tools/tiffgt.c (raster_draw): contribution from Jay Berkenbilt
2314 on Bugzilla Bug #2401. Appropriately call glFlush().
2316 * tools/tiff2pdf.c: change ColorTransform from "0" to "1"
2317 following Bugzilla Bug #2150.
2319 2015-06-13 Lee Howard <faxguy@howardsilvan.com>
2321 * libtiff/tif_lzw.c: contribution from Andy Cave - decode
2322 files that contain consecutive CODE_CLEAR codes.
2324 * tools/tiff2pdf.c: contribution from Antti S. Lankila on
2325 Bugzilla Bug #2078. Suppress initial output of the header.
2327 * tools/tiff2pdf.c: contribution from Yuriy M. Kaminskiy -
2328 Take care in using the return value from snprintf().
2330 * tools/tiffcrop.c: contribution from Eduardo Robles Elvira -
2331 correctly copy the compression tag from the source TIFF.
2333 * tools/tiff2ps.c: contribution from Eduardo Robles Elvira -
2334 correct sizing and scaling problems with output document.
2336 2015-06-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2338 * libtiff/tif_jpeg.c (JPEGDecode): Split JPEGDecode() into two
2339 clean implementations in order to avoid pre-processor hell. Only
2340 one of the implementations is used in a given build.
2342 2015-06-08 Even Rouault <even.rouault at spatialys.com>
2344 * libtiff/tif_jpeg.c: Fix compilation in BITS_IN_JSAMPLE == 12
2347 2015-06-07 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2349 * libtiff/tif_write.c (TIFFWriteEncodedStrip): Fix Coverity 715975
2350 "Division or modulo by zero".
2351 (TIFFWriteEncodedTile): Fix Coverity 715976 and 715977 "Division
2353 (TIFFWriteRawStrip): Fix Coverity 715978 "Division or modulo by
2355 (TIFFWriteScanline): Fix Coverity 715979 "Division or modulo by
2358 * libtiff/tif_read.c (TIFFStartTile): Fix Coverity 715973 and
2359 715974 "Division or modulo by zero".
2361 2015-05-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2363 * libtiff/tif_dir.c (TIFFNumberOfDirectories): Quiet Coverity
2364 1134470 "Logically dead code" by making the roll-over check
2367 * libtiff/tif_luv.c (LogLuvDecodeTile): Fix Coverity 991227
2368 "Division or modulo by zero".
2369 (LogLuvDecodeStrip): Fix Coverity 991239 "Division or modulo by
2371 (LogLuvEncodeStrip): Fix Coverity 991240 "Division or modulo by
2373 (LogLuvEncodeTile): Fix Coverity 991241 "Division or modulo by
2376 * libtiff/tif_dirread.c (TIFFReadDirEntryDoubleArray): Fix
2377 Coverity 298626 "Logically dead code".
2378 (TIFFReadDirEntryFloatArray): Fix Coverity 298627 "Logically dead
2380 (TIFFReadDirEntryIfd8Array): Fix Coverity 298628 "Logically dead
2382 (TIFFReadDirEntrySlong8Array): Fix Coverity 298629 "Logically dead
2385 * libtiff/tif_dir.c (TIFFNumberOfDirectories): Don't depend on ++
2386 operator precedenc in evaluation. Might quench Coverity 1134470
2387 "Logically dead code".
2389 * libtiff/tif_jpeg.c (JPEGDecode): Fix Coverity 602597 "Operands
2390 don't affect result". This change uses ifdefs to include
2391 applicable code based on properties of libjpeg. Still needs to be
2392 re-tested with 12-bit "6b" and "MK1".
2394 2015-05-30 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2396 * libtiff/tif_dirwrite.c (_TIFFRewriteField): Fix Coverity 1024310
2399 * libtiff/tif_ojpeg.c (OJPEGReadHeaderInfoSecStreamDht): Fix
2400 Coverity 601720 "Resource leak".
2402 * libtiff/tif_jpeg.c (JPEGCleanup): Fix Coverity 298624
2403 "Dereference before null check".
2405 * libtiff/tif_ojpeg.c (OJPEGReadBufferFill): Fix Coverity 603400
2406 "Missing break in switch".
2408 * contrib/addtiffo/tif_overview.c (TIFF_DownSample): Check buffer
2409 size calculation for overflow.
2411 * contrib/addtiffo/addtiffo.c (main): Possibly address Coverity
2412 1024226 "Untrusted value as argument".
2414 * tools/gif2tiff.c (readgifimage): Fix Coverity 1024222 "Untrusted
2416 (checksignature): Fix Coverity 1024894 "Ignoring number of bytes
2418 (readextension): Fix Coverity 1024893 "Ignoring number of bytes
2420 (readgifimage): Fix Coverity 1024890 "Ignoring number of bytes
2422 (readraster): Fix Coverity 1024891 "Ignoring number of bytes
2424 (readgifimage): Fix Coverity 1024892 "Ignoring number of bytes
2427 * tools/tiff2pdf.c (t2p_readwrite_pdf_image): Fix Coverity 1024181
2428 "Structurally dead code".
2430 * tools/raw2tiff.c (main): Fix Coverity 1024887 "Unchecked return
2431 value from library".
2432 (guessSize): Fix Coverity 1024888 "Unchecked return value from
2434 (guessSize): Fix Coverity 1214162 "Ignoring number of bytes read".
2435 (guessSize): Fix Coverity 1024889 "Unchecked return value from
2438 * tools/tiff2pdf.c (t2p_readwrite_pdf_image): Fix Coverity 298621
2440 (t2p_readwrite_pdf_image): Fix Coverity 1024181 "Structurally dead
2442 (t2p_write_pdf): Fix Coverity 1227690 "Unused value".
2444 2015-05-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2446 * contrib/iptcutil/iptcutil.c (formatIPTC): Fix Coverity 1024468
2448 (formatIPTC): Fix Coverity 1024727 "Truncated stdio return value".
2449 (formatIPTC): Fix Coverity 1214240 "Untrusted loop bound".
2451 2015-05-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2453 * contrib/addtiffo/tif_ovrcache.c (TIFFCreateOvrCache): Fix
2454 Coverity 298615 "Resource leak".
2455 (TIFFGetOvrBlock): Fix Coverity 1024649 "Unintended sign
2458 * tools/bmp2tiff.c (main): Fix Coverity 1024225 "Untrusted value
2460 (main): Fix Coverity 1024678 "Unchecked return value from
2462 (main): Fix Coverity 1024679 "Unchecked return value from
2464 (main): Fix Coverity 1214160 "Ignoring number of bytes read".
2466 * contrib/addtiffo/tif_ovrcache.c (TIFFCreateOvrCache): Fix
2467 Coverity 298615 "Resource leak".
2469 * tools/tiffcp.c: Fix Coverity 1024306, 1024307, 1024308, 1024309
2472 * tools/tiffsplit.c (cpTiles): Fix Coverity 1024304 "Resource
2474 (cpStrips): Fix Coverity 1024305 "Resource leak".
2476 2015-05-27 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2478 * tools/ras2tiff.c: Fix Sun Raster header definition to be safe
2479 for 64-bit systems. Add some header validations. Should fix many
2481 (main): Fix Coverity 1301206: "Integer handling issues (BAD_SHIFT)".
2482 (main): Quiet Coverity 1024223 "Untrusted value as argument".
2484 * tools/tiffmedian.c (GetInputLine): Fix Coverity 1024795 "Nesting
2485 level does not match indentation".
2486 (get_histogram): Quiet Coverity 1024386 "Out-of-bounds read".
2487 This was a benign mis-diagnosis but added code to enforce against
2490 * tools/tiffcrop.c (ROTATE_ANY): Fix Coverity 1294542 "Logical
2491 vs. bitwise operator".
2492 (readContigStripsIntoBuffer): Fix Coverity 1024545 "Division or
2494 (readContigTilesIntoBuffer): Fix Coverity 1024586 "Logically dead
2496 (writeSingleSection): Fix Coverity 1024796 "Nesting level does not
2498 (writeCroppedImage): Fix Coverity 1024797 "Nesting level does not
2500 (loadImage): Fix Coverity 1299741 "Dereference before null check".
2501 (loadImage): Fix Coverity 1299740 "Out-of-bounds write".
2503 2015-03-02 Even Rouault <even.rouault@spatialys.com>
2505 * tools/tiffdither.c: check memory allocations to avoid writing to
2506 NULL pointer. Also check multiplication overflow. Fixes #2501,
2507 CVE-2014-8128. Derived from patch by Petr Gajdos.
2509 2015-01-26 Even Rouault <even.rouault@spatialys.com>
2511 * add html/v4.0.4beta.html under version control
2512 * HOWTO-RELEASE: write that cvs add html/vX.X.html must be used
2514 2015-01-26 Even Rouault <even.rouault@spatialys.com>
2516 * libtiff 4.0.4beta released
2518 2015-01-26 Even Rouault <even.rouault@spatialys.com>
2520 * automake: updated to 1.15
2521 * libtool: updated to 2.4.5
2523 2015-01-22 Even Rouault <even.rouault@spatialys.com>
2525 * tools/tiff2pdf.c: Fix two crashes (oCERT-2014-013)
2527 2015-01-05 Frank Warmerdam <warmerdam@pobox.com>
2529 * html/bugs.html: remove note about needing to email the tiff mailing
2530 list administrator about being approved for membership, this appears
2533 2015-01-05 Olivier Paquet <olivier.paquet@gmail.com>
2535 * tools/tiff2pdf.c: Fixed unsigned integer addition overflow detection.
2537 2015-01-03 Even Rouault <even.rouault@spatialys.com>
2539 * libtiff/tif_dirread.c: in TIFFCheckDirOffset(), avoid uint16 overflow
2540 when reading more than 65535 directories, and effectively error out when
2541 reaching that limit.
2543 2014-12-29 Even Rouault <even.rouault@spatialys.com>
2545 * libtiff/tif_jpeg.c: in JPEGFixupTags(), recognize SOF2, SOF9 and SOF10
2546 markers to avoid emitting a warning (even if, according to the TechNote,
2547 there are admittedly unusual/not recommended or even forbidden variants, but
2548 they do work well with libjpeg for SOF2, and with libjpeg-turbo for SOF2,
2550 Define in_color_space and input_components to the right values in
2551 JPEGSetupEncode(), before calling jpeg_set_defaults(), as specified by
2552 libjpeg API documentation, so as to be compatible with mozjpeg library.
2553 Note: the default settings of mozjpeg will produce progressive scans, which
2554 is forbidden by the TechNote.
2556 2014-12-29 Even Rouault <even.rouault@spatialys.com>
2558 * libtiff/tif_getimage.c: move test on vertical value of YCbCr subsampling.
2559 to avoid buffer leak (fix previous fix, found by Coverity scan)
2561 2014-12-29 Even Rouault <even.rouault@spatialys.com>
2563 * libtiff/tif_next.c: add new tests to check that we don't read outside of
2564 the compressed input stream buffer.
2566 * libtiff/tif_getimage.c: in OJPEG case, fix checks on strile width/height
2567 in the putcontig8bitYCbCr42tile, putcontig8bitYCbCr41tile and
2568 putcontig8bitYCbCr21tile cases.
2570 2014-12-27 Even Rouault <even.rouault@spatialys.com>
2572 * libtiff/tif_dir.c: in TIFFDefaultDirectory(), reset any already existing
2573 extented tags installed by user code through the extender mechaninm before
2574 calling the extender callback (GDAL #5054)
2576 2014-12-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2578 * tools/tiffcrop.c: Fix warnings about variables set but not used.
2580 * contrib/iptcutil/iptcutil.c: Fix warnings about variables set
2583 * tools/tiffgt.c: Fix warnings about unused parameters.
2585 * libtiff/tif_stream.cxx: Fix warnings about unused parameters.
2587 2014-12-25 Even Rouault <even.rouault@spatialys.com>
2589 * libtiff/tif_getimage.c, libtiff/tif_ojpeg.c, libtiff/tif_zip.c: fix
2590 various typos found by Debian lintian tool (GDAL #5756)
2592 2014-12-24 Even Rouault <even.rouault@spatialys.com>
2594 * libtiff/tif_getimage.c: avoid divide by zero on invalid YCbCr subsampling.
2595 http://bugzilla.maptools.org/show_bug.cgi?id=2235
2597 2014-12-24 Even Rouault <even.rouault@spatialys.com>
2599 * tools/tiff2pdf.c: fix buffer overflow on some YCbCr JPEG compressed images.
2600 http://bugzilla.maptools.org/show_bug.cgi?id=2445
2602 2014-12-24 Even Rouault <even.rouault@spatialys.com>
2604 * tools/tiff2pdf.c: fix buffer overflow on YCbCr JPEG compressed image.
2605 Derived from patch by Petr Gajdos,
2606 http://bugzilla.maptools.org/show_bug.cgi?id=2443
2608 2014-12-23 Even Rouault <even.rouault@spatialys.com>
2610 * libtiff/tif_dirread.c: In EstimateStripByteCounts(), check return code
2611 of _TIFFFillStriles(). This solves crashing bug on corrupted
2612 images generated by afl.
2614 2014-12-23 Even Rouault <even.rouault@spatialys.com>
2616 * libtiff/tif_read.c: fix several invalid comparisons of a uint64 value with
2617 <= 0 by casting it to int64 first. This solves crashing bug on corrupted
2618 images generated by afl.
2620 2014-12-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2622 * tools/tiffdump.c: Guard against arithmetic overflow when
2623 calculating allocation buffer sizes.
2625 2014-12-21 Even Rouault <even.rouault@spatialys.com>
2627 * tools/tiff2bw.c: when Photometric=RGB, the utility only works if
2628 SamplesPerPixel = 3. Enforce that
2629 http://bugzilla.maptools.org/show_bug.cgi?id=2485 (CVE-2014-8127)
2631 2014-12-21 Even Rouault <even.rouault@spatialys.com>
2633 * tools/pal2rgb.c, tools/thumbnail.c: fix crash by disabling TIFFTAG_INKNAMES
2634 copying. The right fix would be to properly copy it, but not worth the burden
2635 for those esoteric utilities.
2636 http://bugzilla.maptools.org/show_bug.cgi?id=2484 (CVE-2014-8127)
2638 2014-12-21 Even Rouault <even.rouault@spatialys.com>
2640 * tools/thumbnail.c: fix out-of-buffer write
2641 http://bugzilla.maptools.org/show_bug.cgi?id=2489 (CVE-2014-8128)
2643 2014-12-21 Even Rouault <even.rouault@spatialys.com>
2645 * tools/thumbnail.c, tools/tiffcmp.c: only read/write TIFFTAG_GROUP3OPTIONS
2646 or TIFFTAG_GROUP4OPTIONS if compression is COMPRESSION_CCITTFAX3 or
2647 COMPRESSION_CCITTFAX4
2648 http://bugzilla.maptools.org/show_bug.cgi?id=2493 (CVE-2014-8128)
2650 2014-12-21 Even Rouault <even.rouault@spatialys.com>
2652 * libtiff/tif_next.c: check that BitsPerSample = 2. Fixes
2653 http://bugzilla.maptools.org/show_bug.cgi?id=2487 (CVE-2014-8129)
2655 2014-12-21 Even Rouault <even.rouault@spatialys.com>
2657 * tools/tiff2pdf.c: check return code of TIFFGetField() when reading
2658 TIFFTAG_SAMPLESPERPIXEL
2660 2014-12-21 Even Rouault <even.rouault@spatialys.com>
2662 * tools/tiffcp.c: fix crash when converting YCbCr JPEG-compressed to none.
2663 Based on patch by Tomasz Buchert (http://bugzilla.maptools.org/show_bug.cgi?id=2480)
2664 Description: fix for Debian bug #741451
2665 tiffcp crashes when converting JPEG-encoded TIFF to a different
2666 encoding (like none or lzw). For example this will probably fail:
2667 tiffcp -c none jpeg_encoded_file.tif output.tif
2668 The reason is that when the input file contains JPEG data,
2669 the tiffcp code forces conversion to RGB space. However,
2670 the output normally inherits YCbCr subsampling parameters
2671 from the input, which leads to a smaller working buffer
2672 than necessary. The buffer is subsequently overrun inside
2673 cpStripToTile() (called from writeBufferToContigTiles).
2674 Note that the resulting TIFF file would be scrambled even
2675 if tiffcp wouldn't crash, since the output file would contain
2676 RGB data intepreted as subsampled YCbCr values.
2677 This patch fixes the problem by forcing RGB space on the output
2678 TIF if the input is JPEG-encoded and output is *not* JPEG-encoded.
2679 Author: Tomasz Buchert <tomasz.buchert@inria.fr>
2681 2014-12-21 Even Rouault <even.rouault@spatialys.com>
2683 Fix various crasher bugs on fuzzed images.
2684 * libtiff/tif_dir.c: TIFFSetField(): refuse to set negative values for
2685 TIFFTAG_XRESOLUTION and TIFFTAG_YRESOLUTION that cause asserts when writing
2687 * libtiff/tif_dirread.c: TIFFReadDirectory(): refuse to read ColorMap or
2688 TransferFunction if BitsPerSample has not yet been read, otherwise reading
2689 it later will cause user code to crash if BitsPerSample > 1
2690 * libtiff/tif_getimage.c: TIFFRGBAImageOK(): return FALSE if LOGLUV with
2691 SamplesPerPixel != 3, or if CIELAB with SamplesPerPixel != 3 or BitsPerSample != 8
2692 * libtiff/tif_next.c: in the "run mode", use tilewidth for tiled images
2693 instead of imagewidth to avoid crash
2694 * tools/bmp2tiff.c: fix crash due to int overflow related to input BMP dimensions
2695 * tools/tiff2pdf.c: fix crash due to invalid tile count (should likely be checked by
2696 libtiff too). Detect invalid settings of BitsPerSample/SamplesPerPixel for CIELAB / ITULAB
2697 * tools/tiffcrop.c: fix crash due to invalid TileWidth/TileHeight
2698 * tools/tiffdump.c: fix crash due to overflow of entry count.
2700 2014-12-15 Even Rouault <even.rouault@spatialys.com>
2702 * libtiff/tif_jpeg.c: Fix regression introduced on 2010-05-07 that caused
2703 all tiles/strips to include quantization tables even when the jpegtablesmode
2704 had the JPEGTABLESMODE_QUANT bit set.
2705 Also add explicit removal of Huffman tables when jpegtablesmode has the
2706 JPEGTABLESMODE_HUFF bit set, which avoids Huffman tables to be emitted in the
2707 first tile/strip (only useful in update scenarios. create-only was
2710 2014-12-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2712 * tools/tiff2pdf.c: Assure that memory size calculations for
2713 _TIFFmalloc() do not overflow the range of tmsize_t.
2715 2014-12-07 Even Rouault <even.rouault@spatialys.com>
2717 * tools/thumbnail.c, tools/tiffcrop.c: "fix" heap read over-run found with
2718 Valgrind and Address Sanitizer on test suite
2720 2014-12-07 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2722 * tools/tiff2pdf.c (t2p_read_tiff_init): TIFFTAG_TRANSFERFUNCTION
2723 tag can return one channel, with the other two channels set to
2724 NULL. The tiff2pdf code was expecting that other two channels
2725 were duplicate pointers in the case where there is only one
2726 channel. Detect this condition in order to avoid a crash, and
2727 presumably perform correctly with just one channel.
2729 2014-12-06 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2731 * tools/tiffdump.c: Fix double-free bug.
2733 2014-11-27 Even Rouault <even.rouault@spatialys.com>
2735 * libtiff/tif_config.vc.h: no longer use "#define snprintf _snprintf" with
2736 Visual Studio 2015 aka VC 14 aka MSVC 1900
2738 2014-11-20 Even Rouault <even.rouault@spatialys.com>
2740 * libtiff/tif_lzw.c: prevent potential null dereference of
2741 sp->dec_codetab in LZWPreDecode (bug #2459)
2743 * libtiff/tif_read.c: in TIFFReadBufferSetup(), avoid passing -1 size
2744 to TIFFmalloc() if passed user buffer size is 0 (bug #2459)
2746 * libtiff/tif_ojpeg.c: make Coverity happier (not a bug, #2459)
2748 * libtiff/tif_dir.c: in _TIFFVGetField() and _TIFFVSetField(), make
2749 Coverity happier (not a bug, #2459)
2751 * libtiff/tif_dirread.c: in TIFFFetchNormalTag(), make Coverity happier
2754 * tools/tiff2pdf.c: close PDF file (bug #2479)
2756 * tools/fax2ps.c: check malloc()/realloc() result (bug #2470)
2758 * tools/tiffdump.c: detect cycle in TIFF directory chaining (bug #2463)
2759 and avoid passing a NULL pointer to read() if seek() failed before (bug #2459)
2761 * tools/tiffcrop.c: fix segfault if bad value passed to -Z option
2762 (bug #2459) and add missing va_end in dump_info (#2459)
2764 * tools/gif2tif.c: apply patch for CVE-2013-4243 (#2451)
2766 2014-11-20 Even Rouault <even.rouault@spatialys.com>
2767 * libtiff/tif_jpeg.c: fix segfault in JPEGFixupTagsSubsampling() on
2768 corrupted image where tif->tif_dir.td_stripoffset == NULL (bug #2471)
2770 2014-11-20 Even Rouault <even.rouault@spatialys.com>
2771 * automake: updated to 1.14.1
2772 * libtool: updated to 2.4.3
2773 * HOWTO-RELEASE: small update about autotools building order
2775 2014-10-20 Olivier Paquet <olivier.paquet@gmail.com>
2776 * tools/tiff2pdf.c: Preserve input file directory order when pages
2777 are tagged with the same page number.
2779 2014-08-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2781 * libtiff/tif_dirread.c (TIFFReadDirEntryOutputErr): Incorrect
2782 count for tag should be a warning rather than an error since
2783 errors terminate processing.
2785 2014-06-07 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2787 * tools/tiff2rgba.c (]): Fixed tiff2rgba usage message in that zip
2788 was wrongly described. Fix suggested by Miguel Medalha.
2790 2014-05-06 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2792 * libtiff/tif_dirinfo.c (TIFFField) : Fix data type for
2793 TIFFTAG_GLOBALPARAMETERSIFD tag. Patch by Steve Underwood.
2794 Reviewed and forwarded by Lee Howard.
2796 2013-11-30 Frank Warmerdam <warmerdam@pobox.com>
2798 * libtiff/tif_dir.c: fix last fix for TIFFNumberOfDirectories()
2800 2013-10-21 Frank Warmerdam <warmerdam@pobox.com>
2802 * libtiff/tif_dir.c: generate error in case of directory count
2805 2013-10-01 Frank Warmerdam <warmerdam@pobox.com>
2807 * libtiff/tiff.h, libtiff/tif_dirinfo.c: add definitions for
2808 TIFF/EP CFARepeatPatternDim and CFAPattern tags (bug #2457)
2810 2013-09-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2812 * libtiff/tif_dir.c (TIFFAdvanceDirectory): If nextdir is found to
2813 be defective, then set it to zero before returning error in order
2814 to terminate processing of truncated TIFF. Issue found and fix
2815 suggested by Richard Nolde.
2817 2013-08-14 Frank Warmerdam <warmerdam@pobox.com>
2819 * tools/gif2tiff.c: fix possible OOB write (#2452, CVE-2013-4244)
2821 2013-08-13 Frank Warmerdam <warmerdam@pobox.com>
2823 * tools/gif2tiff.c: Be more careful about corrupt or
2824 hostile input files (#2450, CVE-2013-4231)
2826 * tools/tiff2pdf.c: terminate after failure of allocating
2827 ycbcr buffer (bug #2449, CVE-2013-4232)
2829 2013-07-09 Frank Warmerdam <warmerdam@google.com>
2831 * tools/tiffinfo.c: Default various values fetched with
2832 TIFFGetField() to avoid being uninitialized.
2834 2013-05-02 Tom Lane <tgl@sss.pgh.pa.us>
2836 * tools/tiff2pdf.c: Rewrite JPEG marker parsing in
2837 t2p_process_jpeg_strip to be at least marginally competent. The
2838 approach is still fundamentally flawed, but at least now it won't
2839 stomp all over memory when given bogus input. Fixes CVE-2013-1960.
2841 2013-05-02 Tom Lane <tgl@sss.pgh.pa.us>
2843 * contrib/dbs/xtiff/xtiff.c, libtiff/tif_codec.c,
2844 libtiff/tif_dirinfo.c, tools/rgb2ycbcr.c, tools/tiff2bw.c,
2845 tools/tiff2pdf.c, tools/tiff2ps.c, tools/tiffcrop.c,
2846 tools/tiffdither.c: Enlarge some fixed-size buffers that weren't
2847 large enough, and eliminate substantially all uses of sprintf(buf,
2848 ...) in favor of using snprintf(buf, sizeof(buf), ...), so as to
2849 protect against overflow of fixed-size buffers. This responds in
2850 particular to CVE-2013-1961 concerning overflow in tiff2pdf.c's
2851 t2p_write_pdf_page(), but in general it seems like a good idea to
2852 deprecate use of sprintf().
2854 2013-03-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2856 * configure.ac: Applied patch by Brad Smith to improve pkg-config
2857 static linking by adding -lm to Libs.private when needed.
2859 2013-03-05 Tom Lane <tgl@sss.pgh.pa.us>
2861 * html/man/tiff2ps.1.html, html/man/tiffcp.1.html,
2862 html/man/tiffdither.1.html, man/tiff2ps.1, man/tiffcp.1,
2863 man/tiffdither.1, tools/tiff2ps.c, tools/tiffcp.c,
2864 tools/tiffdither.c: Sync tool usage printouts and man pages with
2865 reality (quite a few options had escaped being documented in one
2866 or both places). Per an old report from Miroslav Vadkerti.
2868 2013-01-25 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2870 * tools/tiff2ps.c:Fix bug in auto rotate option code. Once a
2871 rotation angle was set by the auto rotate check, it was retained
2872 for all pages that followed instead ofa being retested for each
2873 page. Patch by Richard Nolde.
2875 2013-01-18 Frank Warmerdam <warmerdam@google.com>
2877 * libtiff/tif_write.c: tmsize_t related casting warning fixed for
2880 * libtiff/tif_read.c: uint64/tmsize_t change for MSVC warnings.
2881 http://bugzilla.maptools.org/show_bug.cgi?id=2427
2883 2012-12-20 Tom Lane <tgl@sss.pgh.pa.us>
2885 * test/raw_decode.c: Relax raw_decode's pixel-value checks so that
2886 it will pass with more versions of libjpeg. (There are at least
2887 three in active use now, and JPEG_LIB_VERSION doesn't tell us
2888 enough to uniquely identify expected results.)
2890 2012-12-12 Tom Lane <tgl@sss.pgh.pa.us>
2892 * libtiff/tif_print.c: Fix TIFFPrintDirectory's handling of
2893 field_passcount fields: it had the TIFF_VARIABLE and
2894 TIFF_VARIABLE2 cases backwards.
2896 2012-12-10 Tom Lane <tgl@sss.pgh.pa.us>
2898 * tools/ppm2tiff.c: Improve previous patch for CVE-2012-4564:
2899 check the linebytes calculation too, get the max() calculation
2900 straight, avoid redundant error messages, check for malloc
2903 2012-12-10 Tom Lane <tgl@sss.pgh.pa.us>
2905 * libtiff/tif_pixarlog.c: Improve previous patch for CVE-2012-4447
2906 (to enlarge tbuf for possible partial stride at end) so that
2907 overflow in the integer addition is detected. Per gripe from
2908 Huzaifa Sidhpurwala.
2910 2012-12-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2912 * tools/tiffset.c: tiffset now supports a -u option to unset a
2913 tag. Patch by Zach Baker. See
2914 http://bugzilla.maptools.org/show_bug.cgi?id=2419
2916 2012-11-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2918 * automake: Update Automake to 1.12.5 release.
2920 * libtiff/tif_{unix,vms,win32}.c (_TIFFmalloc): ANSI C does not
2921 require malloc() to return NULL pointer if requested allocation
2922 size is zero. Assure that _TIFFmalloc does.
2924 2012-11-01 Frank Warmerdam <warmerdam@pobox.com>
2926 * tools/ppm2tiff.c: avoid zero size buffer vulnerability.
2927 CVE-2012-4564 - Thanks to Huzaifa Sidhpurwala of the
2928 Red Hat Security Response team for the fix.
2930 2012-10-18 Frank Warmerdam <warmerdam@google.com>
2932 * tif_zip.c: Avoid crash on NULL error messages.
2934 2012-09-22 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2936 * libtiff 4.0.3 released.
2938 2012-09-20 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2940 * Makefile.am: Update to Automake 1.12.4
2942 2012-08-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2944 * Makefile.in: Update to Automake 1.12.3
2946 * libtiff{tiff.h, tif_print.c, tif_dirinfo.c, tif_dirread.c}: Add
2947 some TIFF/FX support in libtiff. Add the tag definitions to
2948 tiff.h. Add the related TIFF field definitions to tif_dirinfo.c,
2949 and also fixes an error in a comment. Adds the photometric values
2950 to tif_print.c, and fixes a bug. These changes are by Steve
2953 2012-08-13 Frank Warmerdam <warmerdam@google.com>
2955 * libtiff/tif_write.c: Fix bug rewriting image tiles in a
2956 compressed file: http://trac.osgeo.org/gdal/ticket/4771
2958 2012-08-02 Frank Warmerdam <warmerdam@google.com>
2960 * libtiff/tif_dirread.c: report error in case of mismatch value
2961 counts for tags (ie. DotRange).
2963 2012-07-26 Tom Lane <tgl@sss.pgh.pa.us>
2965 * libtiff/{tiffio.h, tif_dirinfo.c, libtiff.def}: Add six new
2966 functions TIFFFieldTag(), TIFFFieldName(), TIFFFieldDataType(),
2967 TIFFFieldPassCount(), TIFFFieldReadCount(), TIFFFieldWriteCount()
2968 as external accessors for the opaque type TIFFField.
2970 * tools/tiffset.c: Make tiffset use the above functions instead of
2971 relying on library private headers.
2973 2012-07-19 Tom Lane <tgl@sss.pgh.pa.us>
2975 * tools/tiff2pdf.c: Fix two places where t2p_error didn't get set
2976 after a malloc failure. No crash risk AFAICS, but the program
2977 might not report exit code 1 as desired. h/t mancha@mac.hush.com
2979 2012-07-18 Tom Lane <tgl@sss.pgh.pa.us>
2981 * tools/tiff2pdf.c: Fail when TIFFSetDirectory() fails. This
2982 prevents core dumps or perhaps even arbitrary code execution when
2983 processing a corrupt input file (CVE-2012-3401).
2985 2012-07-06 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2987 * test/raw_decode.c (main): Test fixes to work with IJG JPEG 7+.
2988 IJG JPEG 7+ uses a different upsampling algorithm which produces
2989 different numeric results.
2991 * libtiff/tif_jpeg.c (JPEGPreDecode): Patch from Even Rouault to
2992 work with IJG JPEG 7+.
2994 2012-07-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2996 * test/raw_decode.c: Add changes so that test can run with build
2997 directory outside of source directory.
2999 2012-07-02 Frank Warmerdam <warmerdam@google.com>
3001 * libtiff/tif_jpeg.c: Fix handling when writing RGBA jpeg compressed
3002 imagery (http://trac.osgeo.org/gdal/ticket/4732)
3004 2012-06-20 Frank Warmerdam <warmerdam@google.com>
3006 * libtiff/tif_fax3.c: fix memory initialization of runs, only
3009 * libtiff/tif_pixarlog.c: Make sure tbuf is large enough for one
3010 full "stride" past the end.
3012 2012-06-19 Frank Warmerdam <warmerdam@google.com>
3014 * libtiff/tif_packbits.c: fix read past end of data buffer.
3016 2012-06-15 Frank Warmerdam <warmerdam@google.com>
3018 * libtiff 4.0.2 released.
3020 * tools/tif2pdf.c, tools/tifdump.c: avoid unitialized variable
3021 warnings with clang.
3023 2012-06-15 Tom Lane <tgl@sss.pgh.pa.us>
3025 * tools/tiff2pdf.c: Defend against integer overflows while
3026 calculating required buffer sizes (CVE-2012-2113).
3028 2012-06-12 Frank Warmerdam <warmerdam@google.com>
3030 * libtiff/tif_print.c: Be careful about printing corrupt inknames.
3032 * libtiff/tif_fax3.c: Ensure runs array is initialized to zeros.
3034 2012-06-07 Frank Warmerdam <warmerdam@google.com>
3036 * libtiff/tif_print.c: avoid pretty printing other fields when
3037 we don't have the proper amount and type of data or if the field
3038 is actually autodefined.
3040 2012-06-05 Frank Warmerdam <warmerdam@google.com>
3042 * libtiff/tif_tile.c, libtiff/tif_strip.c: Ensure that illegal
3043 ycbcrsubsampling values result in a runtime error, not just an
3046 * tests/custom_dir.c: Add testing of EXIF and custom directory
3047 reading and writing.
3049 * libtiff/tif_dir.c, libtiff/tiffio.h: Add TIFFCreateCustomDirectory()
3050 and TIFFCreateEXIFDirectory() functions.
3052 * libtiff/tif_dir.c, tif_print.c : Remove FIELD_CUSTOM handling for
3053 PAGENUMBER, HALFTONEHINTS, and YCBCRSUBSAMPLING. Implement DOTRANGE
3054 differently. This is to avoid using special TIFFGetField/TIFFSetField
3055 rules for these fields in non-image directories (like EXIF).
3057 2012-06-04 Frank Warmerdam <warmerdam@google.com>
3059 * libtiff/tif_jpeg.c: Remove code for fixing up h_sampling and v_sampling
3060 in JPEGPreDecode(). If a fixup will be done it needs to be done sooner
3061 in JPEGFixupTagsSubsampling() or else buffer sized may be wrong.
3063 2012-06-01 Frank Warmerdam <warmerdam@google.com>
3065 * tools/tiffinfo.c: Do not try to read image data in EXIF directories.
3067 * libtiff/tif_getimage.c: added support for _SEPARATED CMYK images.
3068 http://bugzilla.maptools.org/show_bug.cgi?id=2379
3070 * libtiff/tif_unix.c: use strerror() to return a more specific error message
3072 http://bugzilla.maptools.org/show_bug.cgi?id=2341
3074 * libtiff/tif_jpeg.c: Fix JPEGDecodeRaw() bugs.
3075 http://bugzilla.maptools.org/show_bug.cgi?id=2386
3077 * tests/decode_raw.c, tests/images/quad-tile.jpg.tiff: add limited support
3078 for testing jpeg in tiff image decoding including the "raw" decode interface.
3080 2012-05-31 Frank Warmerdam <warmerdam@google.com>
3082 * libtiff/tif_jpeg.c: avoid overrunning the end of the output buffer in
3083 JPEGDecodeRaw() - mostly likely to occur when there is confusion about
3086 * libtiff/tif_read.c: Make sure tif_rawdatasize is cleared when tif_rawdata is freed.
3088 * libtiff/tif_getimage.c: Add support for greyscale+alpha c/o Jérémie Laval.
3089 http://bugzilla.maptools.org/show_bug.cgi?id=2398
3091 2012-05-29 Frank Warmerdam <warmerdam@google.com>
3093 * libtiff/tif_dir.c: avoid using specific set/get logic to process fields in custom directories,
3094 like EXIF directories. This fixes problems like a tag "320" existing in a custom directory getting
3095 processed as if it were a colormap when it isn't really. Damn the wide variety of argument formulations
3096 to get/set functions for different tags!
3098 * libtiff/tif_dir.c: Ensure that we keep track of when tif_rawdata
3099 is a pointer into an mmap()ed file via TIFF_BUFFERMMAP flag.
3101 2012-05-24 Frank Warmerdam <warmerdam@google.com>
3103 * libtiff/tif_pixarlog.c: Allocate working buffer one word larger since we "forward
3104 accumulate" and overwrite the end by one word in at least some cases.
3106 2012-05-23 Frank Warmerdam <warmerdam@google.com>
3108 * libtiff/tif_pixarlog.c: avoid accessing out of the lookup arrays for out of range inputs.
3110 * tools/tiffinfo.c: initialize h=0 to avoid undefined variable for degenerate files.
3112 * libtiff/tif_ojpeg.c: if OJPEGWriteHeader() fails once do not bother trying again on
3115 * libtiff/tif_ojpeg.c: make things more resilient in the face of files without
3116 stripbytecounts or stripoffsets or where loading these fails.
3118 * libtiff/tif_print.c: be careful about whether min/max values are singular
3121 * libtiff/tif_print.c: Avoid confusion about count size when printing custom fields.
3122 May affect things like ISOSpeedRatings.
3124 * libtiff/tif_dir.c: avoid one byte past end of ink names reading
3127 2012-05-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3129 * man/TIFFGetField.3tiff: Correct the 'count' field type in the
3130 example for how to retrieve the value of unsupported tags.
3132 2012-03-30 Frank Warmerdam <warmerdam@google.com>
3134 * tif_getimage.c: Fix size overflow (zdi-can-1221,CVE-2012-1173)
3135 care of Tom Lane @ Red Hat.
3137 2012-02-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3139 * libtiff 4.0.1 released.
3141 * Update automake used to 1.11.3.
3143 * libtiff/tiffio.h: Use double-underbar syntax in GCC printf
3144 attribute specification to lessen the risk of accidental macro
3145 substitution. Patch from Vincent Torri.
3147 2012-01-31 Frank Warmerdam <warmerdam@pobox.com>
3149 * libtiff/tif_dir.c, libtiff/tif_dirread.c: Extra caution around
3150 assumption tag fetching is always successful.
3152 * libtiff/tif_jpeg.c: Extra caution for case where sp is NULL.
3154 2012-01-22 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3156 * configure.ac: Add support for using library symbol versioning on
3157 ELF systems with the GNU linker. Support is enabled via
3158 --enable-ld-version-script. Disabled by default for now until
3159 there is a decision for how to deploy a libtiff with versioned
3160 symbols after libtiff 4.0.0 was already released.
3162 2011-12-22 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3164 * libtiff/tif_win32.c: Eliminate some minor 64-bit warnings in
3166 tif_win32.c. Patch by Edward Lam.
3168 * configure.ac: Add libtiff private dependency on -llzma for
3169 pkg-config. Patch by Mark Brand.
3170 Updated Automake to 1.11.2.
3172 2011-12-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3174 * libtiff 4.0.0 released.
3176 2011-12-08 Frank Warmerdam <warmerdam@pobox.com>
3178 * libtiff/tif_dirread.c, libtiff/tif_read.c: more cautious checking
3179 of _TIFFFillStriles() results (#gdal 4372)
3181 2011-12-07 Frank Warmerdam <warmerdam@pobox.com>
3183 * libtiff/tif_dirread.c: fixes to deal with invalid files where
3184 _TIFFFillStriles() fails, and we try to chop up strips (gdal #4372)
3186 * libtiff/tif_dirread.c: fix error reporting when there is no
3187 tag information struct and name (gdal #4373)
3189 2011-10-22 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3191 * Update GNU libtool to 2.4.2.
3193 * tools/tiffsplit.c (tiffcp): TIFFGetField count field should be
3194 uint32 type for TIFFTAG_JPEGTABLES. Patch by Christophe
3197 2011-06-21 Frank Warmerdam <warmerdam@pobox.com>
3199 * libtiff/libtiff.def: Restore TIFFMergeFieldInfo.
3201 2011-05-31 Jim Meyering <meyering@redhat.com>
3203 * libtiff/tif_dirread.c (TIFFFetchStripThing): Free "data" also
3204 upon failure to allocate "resizeddata".
3205 * tools/tiff2ps.c (PSDataBW): Zero buffer *after* checking for
3206 allocation failure, not before.
3207 * libtiff/tif_ojpeg.c: plug leaks on OJPEG read failure path
3208 * tools/rgb2ycbcr.c (cvtRaster): unchecked malloc
3209 * libtiff/tif_jpeg.c, tools/tiff2pdf.c, tools/tiff2ps.c: mark
3210 NULL-deref and possible overflow
3211 * tools/tiff2pdf.c: remove decl+set of set-but-not-used local, "written"
3212 * libtiff/tif_jpeg.c (JPEGInitializeLibJPEG): Remove declaration
3213 and set of otherwise unused local, data_is_empty.
3214 * libtiff/tif_jpeg.c (JPEGDecodeRaw) [JPEG_LIB_MK1_OR_12BIT]:
3215 Diagnose out-of-memory failure and return 0 rather than
3218 2011-05-24 Frank Warmerdam <warmerdam@pobox.com>
3220 * libtiff/tif_dirread.c: produce special error message for zero tag
3221 directories instead of error out on the malloc(0) failure.
3223 2011-05-16 Frank Warmerdam <warmerdam@pobox.com>
3225 * libtiff/tif_dirinfo.c: Restore TIFFMergeFieldInfo() and
3226 related declarations as they are in active use by libraries
3227 such as libgeotiff, and work just fine. (#2315)
3229 2011-04-20 Frank Warmerdam <warmerdam@pobox.com>
3231 * libtiff/tif_dirinfo.c,tiffio.h: Remove the obsolete
3232 TIFFMergeFieldInfo/TIFFFindFieldInfo/TIFFFindFieldInfoByName API.
3233 http://bugzilla.maptools.org/show_bug.cgi?id=2315
3235 * libtiff/libtiff.def: add some missing (64bit) APIs.
3236 http://bugzilla.maptools.org/show_bug.cgi?id=2316
3238 2011-04-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3240 * libtiff 4.0.0beta7 released.
3242 2011-04-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3244 * configure.ac: Should use AC_CANONICAL_HOST since host specifies
3245 the run-time target whereas target is used to specify the final
3246 output target if the package is a build tool (like a compiler),
3247 which libtiff is not. Resolves libtiff bug 2307 "Use
3248 AC_CANONICAL_HOST macro".
3250 2011-04-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3252 * configure.ac: Support configuring TIFF_INT64_FORMAT and
3253 TIFF_UINT64_FORMAT appropriately for MinGW32.
3255 * tools/tiffdump.c (ReadDirectory): MinGW32 needs to use WIN32
3256 printf conventions for 64-bit types because it uses the WIN32 CRT.
3258 * libtiff/{tif_dumpmode.c,tif_luv.c,tif_lzw.c,tif_print.c,
3259 tif_read.c,tif_strip.c,tif_thunder.c}: MinGW32 needs to use WIN32
3260 printf conventions for 64-bit types because it uses the WIN32 CRT.
3262 * tools/tiff2pdf.c (t2p_write_pdf_string): Fix printf syntax not
3263 understood by WIN32 CRT.
3265 * libtiff/tif_ojpeg.c: Fixes to compile with MinGW32 GCC.
3267 * tools/fax2ps.c (main): Use tmpfile() rather than mkstemp() since
3268 it is much more portable. Tmpfile is included in ISO/IEC
3269 9899:1990 and the WIN32 CRT.
3271 2011-03-26 Frank Warmerdam <warmerdam@pobox.com>
3273 * tools/tiffset.c: add -d and -sd switches to allow operation on
3274 a particular directory, not just the first (jef).
3276 2011-03-21 Frank Warmerdam <warmerdam@pobox.com>
3278 * libtiff/tif_thunder.c: Correct potential buffer overflow with
3279 thunder encoded files with wrong bitspersample set. The libtiff
3280 development team would like to thank Marin Barbella and TippingPoint's
3281 Zero Day Initiative for reporting this vulnerability (ZDI-CAN-1004,
3283 http://bugzilla.maptools.org/show_bug.cgi?id=2300
3285 2011-03-10 Frank Warmerdam <warmerdam@pobox.com>
3287 * libtiff/tif_fax3.h: Fix to last change allowing zero length
3288 runs at the start of a scanline - needed for legal cases.
3290 2011-03-02 Frank Warmerdam <warmerdam@pobox.com>
3292 * libtiff/tif_fax3.h: Protect against a fax VL(n) codeword commanding
3293 a move left. Without this, a malicious input file can generate an
3294 indefinitely large series of runs without a0 ever reaching the right
3295 margin, thus overrunning our buffer of run lengths. Per CVE-2011-0192.
3296 This is a modified version of a patch proposed by Drew Yao of Apple
3297 Product Security. It adds an unexpected() report, and disallows the
3298 equality case, since emitting a run without increasing a0 still allows
3301 2011-02-23 Frank Warmerdam <warmerdam@pobox.com>
3303 * libtiff/tif_jpeg.c: avoid divide by zero in degenerate case (#2296)
3305 * tools/tiff2rgba.c: close source file on error to make leak
3308 * libtiff/tif_getimage.c: avoid leaks if TIFFRGBAImageBegin() fails.
3310 http://bugzilla.maptools.org/show_bug.cgi?id=2295
3312 2011-02-22 Frank Warmerdam <warmerdam@pobox.com>
3314 * libtiff/tif_lzma.c: Maintain tif_rawcc/tif_rawcp (CHUNKY_STRING_READ
3317 2011-02-18 Frank Warmerdam <warmerdam@pobox.com>
3319 * configure.ac, configure: Added support for --enable-chunky-strip-read
3320 configure option to enable the experimental feature from a couple
3321 months ago for reading big strips in chunks.
3323 * configure.ac, tif_read.c, tif_readdir.c, tif_dir.h, tiffiop.h,
3324 tif_write.c, tif_print.c, tif_jpeg.c, tif_dirwrite.c, tif_write.c:
3325 Implement optional support for deferring the load of strip/tile
3326 offset and size tags for optimized scanning of directories. Enabled
3327 with the --enable-defer-strile-load configure option (DEFER_STRILE_LOAD
3328 #define in tif_config.h).
3330 2011-02-11 Frank Warmerdam <warmerdam@pobox.com>
3332 * libtiff/tif_print.c: remove unused variable.
3334 2011-02-09 Frank Warmerdam <warmerdam@pobox.com>
3336 * libtiff/tif_win32.c: avoid error/warning buffer overrun problem
3337 with non-console (popup message) builds on win32.
3339 http://bugzilla.maptools.org/show_bug.cgi?id=2293
3341 2011-01-24 Olivier Paquet <olivier.paquet@gmail.com>
3343 * libtiff/{tif_dir.{h,c}, tif_dirinfo.c, tif_dirread.c, tif_dirwrite.c,
3344 tif_print.c, tiff.h, tiffiop.h} : Added support for
3345 TIFFTAG_SMINSAMPLEVALUE and TIFFTAG_SMAXSAMPLEVALUE to have different
3346 values for each sample. Presents the min/max of all samples by default for
3347 compatibility. TIFFSetField/TIFFGetField can be made to handle those tags
3348 as arrays by changing the new TIFFTAG_PERSAMPLE pseudo tag.
3349 http://www.asmail.be/msg0055458208.html
3351 2011-01-06 Frank Warmerdam <warmerdam@pobox.com>
3353 * libtiff/tif_pixarlog.c: Note that tif_rawcc/tif_rawcp are not
3356 * libtiff/tif_zip.c: Maintain tif_rawcc/tif_rawcp when decoding
3357 for CHUNKY_STRIP_READ_SUPPORT.
3359 * libtiff/tif_jpeg.c: ensure that rawcc and rawcp are maintained
3360 during JPEGPreDecode and JPEGDecode calls.
3361 * libtiff/tif_read.c: larger read ahead for CHUNKY_STRIP_READ_SUPPORT,
3362 as compression formats like JPEG keep 16 lines interleaved in a sense
3363 and might need to touch quite a bit of data.
3365 http://trac.osgeo.org/gdal/ticket/3894
3367 2011-01-03 Lee Howard <faxguy@howardsilvan.com>
3369 * libtiff/tif_jpeg.c: Fix regressions with 2 and 3 band images
3370 caused by commit on 2010-12-14. Submitted by e-mail from
3371 Even Rouault <even.rouault@mines-paris.org>
3373 2010-12-31 Olivier Paquet <olivier.paquet@gmail.com>
3375 * libtiff/tif_dirwrite.c: Fixed writing of TIFFTAG_REFERENCEBLACKWHITE.
3376 http://bugzilla.maptools.org/show_bug.cgi?id=2266
3378 2010-12-23 Andrey Kiselev <dron@ak4719.spb.edu>
3380 * tools/tiffcp.c, man/tiffcp.1: Added support for specifying the
3381 compression level parameter (preset) for Deflate and LZMA encoders,
3382 e.g "-c lzma:p1" or "-c zip:p9".
3384 * libtiff/tif_lzma.c: Properly set the LZMA2 compression level
3385 (preset) in LZMAVSetField().
3387 2010-12-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3389 * libtiff/Makefile.am (libtiff_la_SOURCES): Added tif_lzma.c to
3392 2010-12-14 Andrey Kiselev <dron@ak4719.spb.edu>
3394 * configure.ac, libtiff/{tif_codec.c, tif_config.h.in, tiff.h,
3395 tiffiop.h, tif_lzma.c}, tools/tiffcp.c, man/tiffcp.1: Implement a new
3396 TIFF compression scheme LZMA reserving a new value 34925 for
3397 Compression tag. As per
3398 bug http://bugzilla.maptools.org/show_bug.cgi?id=2221
3400 2010-12-14 Lee Howard <faxguy@howardsilvan.com>
3402 * libtiff/tif_dirread.c: tolerate some cases where
3403 FIELD_COLORMAP is missing
3404 http://bugzilla.maptools.org/show_bug.cgi?id=2189
3406 2010-12-14 Lee Howard <faxguy@howardsilvan.com>
3408 * libtiff/tif_read.c: change read_ahead to tmsize_t
3409 http://bugzilla.maptools.org/show_bug.cgi?id=2222
3411 2010-12-14 Lee Howard <faxguy@howardsilvan.com>
3413 * configure.ac, libtiff/Makefile.am: Build tif_win32.c on
3414 Windows except on Cygwin
3415 http://bugzilla.maptools.org/show_bug.cgi?id=2224
3417 2010-12-14 Lee Howard <faxguy@howardsilvan.com>
3419 * tools/gif2tiff.c: fix buffer overrun
3420 http://bugzilla.maptools.org/show_bug.cgi?id=2270
3422 2010-12-14 Lee Howard <faxguy@howardsilvan.com>
3424 * libtiff/tif_jpeg.c: reduce usage of JCS_UNKNOWN in order
3425 to improve compatibility with various viewers
3426 submitted by e-mail from Dwight Kelly <dkelly@apago.com>
3428 2010-12-13 Lee Howard <faxguy@howardsilvan.com>
3430 * tools/fax2ps.c: be consistent with page-numbering
3431 http://bugzilla.maptools.org/show_bug.cgi?id=2225
3433 2010-12-13 Lee Howard <faxguy@howardsilvan.com>
3435 * libtiff/tif_color.c: prevent crash in handling bad TIFFs
3436 resolves CVE-2010-2595
3437 http://bugzilla.maptools.org/show_bug.cgi?id=2208
3439 2010-12-13 Lee Howard <faxguy@howardsilvan.com>
3441 * tools/tiffcrop.c: new release by Richard Nolde
3442 http://bugzilla.maptools.org/show_bug.cgi?id=2004
3444 2010-12-12 Lee Howard <faxguy@howardsilvan.com>
3446 * tools/tiff2pdf.c: fix colors for images with RGBA
3448 http://bugzilla.maptools.org/show_bug.cgi?id=2250
3450 2010-12-12 Lee Howard <faxguy@howardsilvan.com>
3452 * libtiff/tif_dirread.c: fix for Zeiss LSM and Canon CR2 files
3453 http://bugzilla.maptools.org/show_bug.cgi?id=2164
3455 2010-12-11 Lee Howard <faxguy@howardsilvan.com>
3457 * tools/tiff2pdf.c: remove invalid duplication for Lab
3458 http://bugzilla.maptools.org/show_bug.cgi?id=2162
3460 2010-12-11 Lee Howard <faxguy@howardsilvan.com>
3462 * libtiff/tif_jpeg.c: fix use of clumplines calculation
3463 http://bugzilla.maptools.org/show_bug.cgi?id=2149
3465 2010-12-11 Lee Howard <faxguy@howardsilvan.com>
3467 * tools/fax2ps.c: replace unsafe tmpfile() with mkstemp()
3468 http://bugzilla.maptools.org/show_bug.cgi?id=2118
3470 2010-12-11 Lee Howard <faxguy@howardsilvan.com>
3472 * libtiff/tif_ojpeg.c, libtiff/tif_pixarlog.c,
3473 libtiff/tif_zip.c: fix build errors for VC6
3474 http://bugzilla.maptools.org/show_bug.cgi?id=2105
3476 2010-12-11 Lee Howard <faxguy@howardsilvan.com>
3478 * libtiff/tif_stream.cxx: warnings cleanup
3479 http://bugzilla.maptools.org/show_bug.cgi?id=2091
3480 * libtiff/tif_dirread.c: warnings cleanup
3481 http://bugzilla.maptools.org/show_bug.cgi?id=2092
3483 2010-12-11 Lee Howard <faxguy@howardsilvan.com>
3485 * tools/tiff2pdf.c: add fill-page option
3486 http://bugzilla.maptools.org/show_bug.cgi?id=2051
3488 2010-12-11 Lee Howard <faxguy@howardsilvan.com>
3490 * libtiff/tif_dirread.c: modify warnings
3491 http://bugzilla.maptools.org/show_bug.cgi?id=2016
3493 2010-12-11 Lee Howard <faxguy@howardsilvan.com>
3495 * libtiff/tif_ojpeg.c: fix buffer overflow on problem data
3496 http://bugzilla.maptools.org/show_bug.cgi?id=1999
3498 2010-12-11 Lee Howard <faxguy@howardsilvan.com>
3500 * tools/tiffinfoce.c: strip byte counts are uint64* now
3502 2010-12-11 Lee Howard <faxguy@howardsilvan.com>
3504 * libtiff/tif_ojpeg.c: fix crash when reading a TIFF with a zero
3505 or missing byte-count tag
3506 * tools/tiffsplit.c: abort when reading a TIFF without a byte-count
3507 per http://bugzilla.maptools.org/show_bug.cgi?id=1996
3509 2010-12-08 Lee Howard <faxguy@howardsilvan.com>
3511 * libtiff/tif_dirread.c: fix crash when reading a badly-constructed
3512 TIFF per http://bugzilla.maptools.org/show_bug.cgi?id=1994
3514 2010-12-06 Lee Howard <faxguy@howardsilvan.com>
3516 * libtiff/tif_open.c: Fix mode check before opening a file.
3517 http://bugzilla.maptools.org/show_bug.cgi?id=1906
3519 2010-11-27 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3521 * libtiff-4.pc.in: Added libtiff pkg-config .pc file support.
3522 Patch by Vincent Torri.
3524 2010-10-21 Frank Warmerdam <warmerdam@pobox.com>
3526 * tools/tiffinfo.c: avoid direct reference to _TIFFerrorHandler.
3528 * libtiff/tif_config.vc.h: define snprintf to _snprintf for tiff2pdf.
3530 * libtiff/libtiff.def: export _TIFFCheckMalloc for tools.
3532 2010-09-25 Lee Howard <faxguy@howardsilvan.com>
3534 * tools/tiff2ps.c: improvements and enhancements from Richard Nolde
3535 with additional command line options for Document Title,
3536 Document Creator, and Page Orientation
3538 2010-07-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3540 * tools/tiffcrop.c: Patch from Richard Nolde to avoid a
3541 potentially unterminated buffer due to using an exceptionally long
3544 2010-07-08 Andrey Kiselev <dron@ak4719.spb.edu>
3546 * tools/tiff2pdf.c: Fixed ID buffer filling in
3547 t2p_write_pdf_trailer(), thanks to Dmitry V. Levin.
3549 2010-07-07 Andrey Kiselev <dron@ak4719.spb.edu>
3551 * libtiff/tif_dirread.c: Really reset the tag count in CheckDirCount()
3552 to expected value as the warning message suggests. As per bug
3553 http://bugzilla.maptools.org/show_bug.cgi?id=1963
3555 2010-07-06 Andrey Kiselev <dron@ak4719.spb.edu>
3557 * tools/tiffset.c: Properly handle TIFFTAG_PAGENUMBER,
3558 TIFFTAG_HALFTONEHINTS, TIFFTAG_YCBCRSUBSAMPLING, TIFFTAG_DOTRANGE
3559 which should be set by value.
3561 * libtiff/tif_dirinfo.c: Don't use assertions in _TIFFFieldWithTag()
3562 and _TIFFFieldWithName() if the tag is not found in the tag table.
3563 This should be normal situation and returned NULL value should be
3564 properly handled by the caller.
3566 2010-07-02 Andrey Kiselev <dron@ak4719.spb.edu>
3568 * libtiff/tif_getimage.c: Avoid wrong math du to the signed/unsigned
3569 integer type conversions. As per bug
3570 http://bugzilla.maptools.org/show_bug.cgi?id=2207
3572 * tools/{tiff2bw.c, thumbnail.c, pal2rgb.c}: Fix the count for
3573 WhitePoint tag as per bug
3574 http://bugzilla.maptools.org/show_bug.cgi?id=2042
3576 * libtiff/tif_getimage.c: Check the number of samples per pixel when
3577 working with YCbCr image in PickContigCase(). As per bug
3578 http://bugzilla.maptools.org/show_bug.cgi?id=2216
3580 * libtiff/tif_dir.c: Set the bogus post-decoding hook when processing
3581 TIFFTAG_BITSPERSAMPLE in _TIFFVSetField() for the case of 8 bit when
3582 we don't need any post-processing. That helps to reset the hook if we
3583 previously set this field to some other value and the hook was
3584 initialized accordingly. As per bug
3585 http://bugzilla.maptools.org/show_bug.cgi?id=2035
3587 2010-07-01 Andrey Kiselev <dron@ak4719.spb.edu>
3589 * tools/tiffgt.c: Properly check the raster buffer allocations for
3590 integer overflows. As per bug
3591 http://bugzilla.maptools.org/show_bug.cgi?id=2108
3593 * m4/acinclude.m4: Update GL/GLU/GLUt/Pthread macros from the
3596 * libtiff/{tif_aux.c, tif_strip.c, tif_tile.c, tiffiop.h}: Move
3597 multiply_32() and multiply_64() functions into tif_aux.c file and
3598 rename them into _TIFFMultiply32() and _TIFFMultiply64() respectively.
3600 2010-06-30 Andrey Kiselev <dron@ak4719.spb.edu>
3602 * tools/tiff2pdf.c: Better generation of ID field in
3603 t2p_write_pdf_trailer(). Get rid of GCC aliasing warnings.
3605 * tools/tiff2pdf.c: Fixed computation of the tile buffer size when
3606 converting JPEG encoded tiles.
3608 * tools/tiff2pdf.c: Better handling of string fields, use static
3609 string buffers instead of dynamically allocated, use strncpy() instead
3610 of strcpy(), control the string lengths.
3612 2010-06-25 Andrey Kiselev <dron@ak4719.spb.edu>
3614 * tools/tiffcp.c: Initialize buffer arrays with zero to avoid
3615 referencing to uninitialized memory in some cases (e.g. when tile size
3616 set bigger than the image size).
3618 2010-06-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3620 * tools/tiffcrop.c: Patch from Richard Nolde. Reject YCbCr
3621 subsampled data since tiffcrop currently doesn't support it. Fix
3624 2010-06-13 Frank Warmerdam <warmerdam@pobox.com>
3626 * libtiff/tif_dirinfo.c: Fix invocation of tag compare function (#2201)
3628 * tools/tiff2pdf.c: Fix assorted bugs in tiff2pdf: missing "return"
3629 in t2p_read_tiff_size() causes t2p->tiff_datasize to be set entirely
3630 wrong for COMPRESSION_JPEG case, resulting in memory stomp if actual
3631 size is larger. Also, there are a bunch of places that try to
3632 memset() a malloc'd buffer before checking for malloc failure, which
3633 would result in core dump if there actually were a failure. (#2211)
3635 2010-06-11 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3637 * libtiff/tiffiop.h (TIFFSafeMultiply): Need more castings to
3638 avoid compiler warnings if parameter types are not sign
3641 * libtiff 4.0.0alpha6 released.
3643 * tools/tiffcrop.c: Applied patch from Richard Nolde: Corrected
3644 European page size dimensions. Added an option to allow the user
3645 to specify a custom page size on the command line. Fix the case
3646 where a page size specified with a fractional part was being
3647 coerced to an integer by retyping the variables that define the
3650 * html/index.html: Update for the 3.9.3 release.
3652 * tools/tiffcp.c (tiffcp): Applied Tom Lane's patch to reject
3653 YCbCr subsampled data since tiffcp currently doesn't support it.
3654 http://bugzilla.maptools.org/show_bug.cgi?id=2097
3656 * Update libtool to version 2.2.10.
3658 2010-06-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3660 * libtiff/tiffiop.h (TIFFSafeMultiply): Work properly if
3663 2010-06-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3665 * libtiff/tif_fax3.c (Fax3SetupState): Yesterday's fix for
3666 CVE-2010-1411 was not complete.
3668 * libtiff/tiffiop.h (TIFFSafeMultiply): New macro to safely
3669 multiply two integers. Returns zero if there is an integer
3672 * tools/tiffcp.c (main): tiffcp should not leak memory if an error
3673 is reported when reading the input file.
3675 2010-06-08 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3677 * Update libtool to version 2.2.8.
3679 * libtiff/tif_fax3.c (Fax3SetupState): Avoid under-allocation of
3680 buffer due to integer overflow in TIFFroundup() and several other
3681 potential overflows. In conjunction with the fix to TIFFhowmany(),
3682 fixes CVE-2010-1411.
3684 * libtiff/tiffiop.h (TIFFhowmany): Return zero if parameters would
3685 result in an integer overflow. This causes TIFFroundup() to also
3686 return zero if there would be an integer overflow.
3688 * contrib: Add an emacs formatting mode footer to all source files
3689 so that emacs can be effectively used.
3691 2010-06-03 Oliver Chen Feng <scip8183@gmail.com>
3693 * libtiff/tools/tiffcp.c: add a new option -x to force merged tiff
3694 file PAGENUMBER value in sequence for users who care the page
3695 sequence, this will also prevent tiff2pdf from creating pdf file from
3696 the merged tiff file with wrong page sequence.
3698 2010-05-08 Olivier Paquet <olivier.paquet@gmail.com>
3700 * libtiff/tif_dirread.c: Restored TIFFReadDirEntryFloat function in order
3701 to add missing TIFF_SETGET_FLOAT case to TIFFFetchNormalTag.
3702 * libtiff/tif_dirinfo.c: Use correct set_field_type for
3703 TIFFTAG_PIXAR_FOVCOT so it is readable again (regression from 3.9.2).
3704 http://bugzilla.maptools.org/show_bug.cgi?id=2192
3706 2010-05-07 Frank Warmerdam <warmerdam@pobox.com>
3708 * libtiff/tif_jpeg.c: Ensure that quality is always set in
3709 JPEGPreEncode(), not just when we want to output local tables.
3710 Otherwise the quality used during compression may not be right and
3711 might not match the tables in the tables tag. This bug only occurs
3712 when seeking between directories in the midst of writing blocks.
3713 http://trac.osgeo.org/gdal/ticket/3539
3715 2010-05-06 Andrey Kiselev <dron@ak4719.spb.edu>
3717 * html/man/TIFFGetField.3tiff.html, html/man/TIFFSetField.3tiff.html:
3718 Regenerated from the source.
3720 2010-05-05 Olivier Paquet <olivier.paquet@gmail.com>
3722 * libtiff/tif_print.c: Fixed printing of TIFFTAG_REFERENCEBLACKWHITE which
3723 had stopped working. Also made it always print 6 floats instead of
3725 http://bugzilla.maptools.org/show_bug.cgi?id=2191
3726 http://bugzilla.maptools.org/show_bug.cgi?id=2186
3727 * man/TIFFGetField.3tiff, man/TIFFSetField.3tiff: Fixed doc to reflect the
3728 fact that libtiff considers TIFFTAG_REFERENCEBLACKWHITE to be 6 floats.
3730 2010-05-05 Frank Warmerdam <warmerdam@pobox.com>
3732 * libtiff/tif_jpeg.c: Fix to use memcmp(), not memcpy() when checking
3733 if the jpeg table was written. This is a fix for the last fix on 04-21.
3735 2010-04-21 Frank Warmerdam <warmerdam@pobox.com>
3737 * libtiff/tif_jpeg.c: avoid preparing jpeg tables every time
3738 JPEGSetupEncode() is called if the tables already seem to be
3739 established. This prevents spurious updates and rewriting of
3740 directories with jpegtables when doing updates to existing images.
3741 http://trac.osgeo.org/gdal/ticket/3539
3743 2010-04-20 Olivier Paquet <olivier.paquet@gmail.com>
3745 * libtiff/tif_dirinfo.c: Use correct set_field_type for
3746 TIFFTAG_PIXAR_IMAGEFULLWIDTH, TIFFTAG_PIXAR_IMAGEFULLLENGTH,
3747 TIFFTAG_PIXAR_MATRIX_WORLDTOSCREEN and TIFFTAG_PIXAR_MATRIX_WORLDTOCAMERA.
3748 They were unreadable with TIFF_SETGET_UNDEFINED, a regression from 3.9.2.
3749 http://bugzilla.maptools.org/show_bug.cgi?id=2139
3751 2010-04-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3753 * libtiff/tif_dir.c (_TIFFVSetField): Add a special error case for
3754 when the tag count value is zero. Error handling is still a
3755 regression since in 3.9.2, empty tags are skipped (with a warning)
3756 rather than returning a hard error and refusing to read the file.
3758 * tools/ppm2tiff.c (main): While case for parsing comment line
3759 requires extra parenthesis to work as expected. Reported by
3762 2010-04-02 Frank Warmerdam <warmerdam@pobox.com>
3764 * libtiff/tif_read.c (primarily): Add support for
3765 CHUNKY_STRIP_READ_SUPPORT where large strips are
3766 read in chunks for applications using TIFFReadScanline().
3767 This is intended to make it more practical work with very
3768 large compressed one-strip files. Feature is off by default.
3769 Enable by defining CHUNK_STRIP_READ_SUPPORT as a macro.
3770 http://trac.osgeo.org/gdal/ticket/3514
3772 2010-03-31 Frank Warmerdam <warmerdam@pobox.com>
3774 * libtiff/tif_flush.c: Use TIFFRewriteDirectory() when flushing
3775 directories so previously placed directories will be migrated to
3776 the end of file if needed.
3778 2010-03-30 Frank Warmerdam <warmerdam@pobox.com>
3780 * libtiff/tif_lzw.c: change type of dec_bitsleft field to uint64
3781 to support operating on strips/tiles of more than 256MB.
3782 http://trac.osgeo.org/gdal/ticket/3512
3784 2010-03-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3786 * libtiff/tif_aux.c (_TIFFCheckRealloc): Improve error message so
3787 that it is clearly a memory allocation error message, and also
3788 includes the size of the allocation request.
3790 2010-02-22 Lee Howard <faxguy@howardsilvan.com>
3792 * libtiff/tif_jpeg.c: Do not generate a JPEGTables tag when creating
3793 the JPEG TIFF as is is not required in order to prevent it from
3794 being unused and filled with invalid data. (Leave it to be
3795 generated by later activity.)
3796 http://bugzilla.maptools.org/show_bug.cgi?id=2135
3797 * tools/tiff2pdf.c: Write the JPEG SOI headers into the TIFF strip
3798 data rather than skipping them. This fixes the ability to view in
3799 Acrobat Reader, Evince, and Ghostscript.
3800 http://bugzilla.maptools.org/show_bug.cgi?id=2135
3801 * libtiff/tif_fax3.c: Don't return error on badly-terminated MMR
3803 http://bugzilla.maptools.org/show_bug.cgi?id=2029
3805 2009-12-03 Frank Warmerdam <warmerdam@pobox.com>
3807 * libtiff/tif_jpeg.c: Made JPEGDecodeRaw() check for buffer overruns.
3808 Made so that when working with downsampled images a stub function
3809 reporting an error is used for tif_decoderow. We cannot meaningfully
3810 support reading scanlines in this situation. (#1936)
3812 * libtiff/tif_jpeg.c: Ensure that tif_scanlinesize is computed after
3813 resetting of the upsampling values (gdal:#3259).
3814 http://bugzilla.maptools.org/show_bug.cgi?id=1936
3816 2009-11-30 Frank Warmerdam <warmerdam@pobox.com>
3818 * contrib/dbs/tiff-grayscale.c, contrib/tif-palette.c,
3819 tools/ras2tiff.c: Fix resource leaks on error.
3820 http://bugzilla.maptools.org/show_bug.cgi?id=2121
3822 * libtiff/tif_{aux.c,dir.c,dir.h,dirinfo.c}: Return to handling
3823 TIFFTAG_REFERENCEBLACKWHITE as a field in the TIFF directory instead
3824 of as a custom(generic) field to avoid a potential reentrancy problem.
3825 http://bugzilla.maptools.org/show_bug.cgi?id=2125
3827 * libtiff/tif_color.c, libtiff/tif_getimage.c, libtiff/tiffio.h,
3828 man/TIFFcolor.3tiff: Make TIFFDisplay argument in TIFFCIELabToRGBInit
3829 const, and display_sRGB static and const.
3830 http://bugzilla.maptools.org/show_bug.cgi?id=2124
3832 2009-11-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3834 * libtiff 4.0.0alpha5 released.
3836 2009-11-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3838 * tools/tiffcrop.c: Updated tiffcrop from Richard Nolde. This
3839 version has undergone substantial testing with arbitrary sample
3840 bit depths. Also eliminates GCC compilation warnings.
3842 2009-11-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3844 * port/libport.h: Add extern declarations for getopt standard
3847 2009-10-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3849 * libtiff/tif_lzw.c (LZWDecode, LZWDecodeCompat): Fix warnings
3850 noticed in 64-bit build of libtiff with Visual Studio 2005.
3851 Resolves "Bug 2067 - Visual Studio 2005 64-bit warnings in
3852 tif_lzw.c", http://bugzilla.maptools.org/show_bug.cgi?id=2067
3854 * libtiff/tif_pixarlog.c (PixarLogEncode): Fix non-important
3855 warning noticed in Visual Studio 2005 build. Resolves "Bug 2068 -
3856 Visual Studio 2005 64-bit warning in tif_pixarlog.c",
3857 http://bugzilla.maptools.org/show_bug.cgi?id=2068
3859 2009-10-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3861 * libtiff/tif_dirread.c: Eliminate GCC "dereferencing type-punned
3864 2009-10-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3866 * html/tools.html: Add manual page links, and a summary
3867 description of tiffcrop.
3869 2009-10-07 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3871 * configure.ac: x86_64 should use the same fill order as i386.
3873 2009-09-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3875 * tools/tiffcrop.c, man/tiffcrop.1: New tiffcrop from Richard
3876 Nolde. Major updates to add significant functionality for reading
3877 and writing tile based images with bit depths not a multiple of 8
3878 which cannot be handled by tiffcp.
3880 2009-09-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3882 * libtiff/tif_ojpeg.c (OJPEGWriteHeaderInfo): IJG JPEG 7 needs
3883 do_fancy_upsampling=FALSE in order to read raw data. Resolves
3884 "Bug 2090 - OJPEG crash with libjpeg v7".
3885 http://bugzilla.maptools.org/show_bug.cgi?id=2090
3887 2009-09-03 Frank Warmerdam <warmerdam@pobox.com>
3889 * libtiff/tif_getimage.c: Fixed error recognition handling in RGBA
3890 interface when stoponerror is set.
3891 http://bugzilla.maptools.org/show_bug.cgi?id=2071
3893 2009-08-30 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3895 * tools/{tiffcrop.c,tiffgt.c}: Applied patch from Oden Eriksson to
3896 fix build with gcc when using the "-Wformat
3897 -Werror=format-security" flags.
3899 2009-08-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3901 * test/{bmp2tiff_palette.sh, bmp2tiff_rgb.sh, gif2tiff.sh,
3902 ppm2tiff_pbm.sh, ppm2tiff_pgm.sh, ppm2tiff_ppm.sh}: Additional
3905 2009-08-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3907 * tools/tiffinfo.c: tiffinfo should return error status to the
3908 caller. Register a private error callback to accomplish that.
3910 * test/Makefile.am (TIFFIMAGES): Add test images in BMP, GIF, and
3911 PNM formats so that we will be able to test more of the tools.
3912 While adding these test images I notice that bmp2tiff and gif2tiff
3913 only support ancient versions of their respective formats.
3915 2009-08-27 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3917 * libtiff 4.0.0alpha4 released.
3919 * HOWTO-RELEASE: Improved release instructions.
3921 2009-08-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3923 * man/{TIFFClose.3tiff,raw2tiff.1,tiffcmp.1,tiffsplit.1}: Applied
3924 fixes for "Bug 2023 - nroff errors in manual pages".
3925 http://bugzilla.maptools.org/show_bug.cgi?id=2023
3927 * tools/{rgb2ycbcr.c, tiff2rgba.c}: Applied fixes for "Bug 2079 -
3928 CVE-2009-2347 libtiff: integer overflows in various inter-color
3929 space conversion tools".
3930 http://bugzilla.maptools.org/show_bug.cgi?id=2079
3932 * libtiff/tif_print.c (TIFFPrintDirectory): Apply fix from Jay
3933 Berkenbilt for "Bug 2024 - possible null pointer dereference with
3935 http://bugzilla.maptools.org/show_bug.cgi?id=2024
3937 * libtiff/tif_dirread.c (TIFFReadCustomDirectory): Apply patch
3938 from Jay Berkenbilt for "Bug 1895 - logic error in tif_dirread.c:
3939 segfault after setting tdir_tag = IGNORE".
3940 http://bugzilla.maptools.org/show_bug.cgi?id=1895
3942 2009-08-23 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3944 * test/Makefile.am, test/tiffcrop*.sh: Split previously existing
3945 tiffcrop.sh into a collection of many specific tests. Re-wrote
3946 all of the existing tests to be based on some simple shell
3947 functions. Make distcheck works again.
3949 Export certain variables (MAKE, MAKEFLAGS, MEMCHECK) to tests and
3950 added 'memcheck' and 'ptrcheck' targets to make it easy to run the
3951 tests under valgrind.
3953 2009-08-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3955 * test/tiffcp-logluv.sh: Fix test so that it works with a VPATH
3958 * test/Makefile.am (AUTOMAKE_OPTIONS): Colorized tests was not
3959 actually activated since it needed to be enabled in this
3960 Makefile.am. Also activated parallel-tests mode since it offers
3961 useful features such as per-test .log files and a summary test
3964 2009-08-20 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
3966 * configure.ac: Updated autotools. Autoconf 2.64, Automake 1.11,
3967 libtool 2.2.6. Enabled support for silent build rules
3968 (--enable-silent-rules or 'make V=0') and colorized tests.
3970 * html/{index.html, v3.9.0.html}: Update for 3.9.0 release.
3972 2009-06-30 Frank Warmerdam <warmerdam@pobox.com>
3974 * tests/tiffcp-logluv.sh: minimal testing of sgilog compression.
3976 * tools/tiffcp.c: add -c sgilog support.
3978 * libtiff/tif_luv.c: correct return codes from encoderow to be
3979 1 on success instead of zero.
3980 http://bugzilla.maptools.org/show_bug.cgi?id=2069
3982 * libtiff/tif_lzw.c: back out patch from #2065 and apply patch from
3983 #1085 for a better underflow fix that errors properly.
3984 http://bugzilla.maptools.org/show_bug.cgi?id=2065
3985 http://bugzilla.maptools.org/show_bug.cgi?id=1985
3987 2009-06-26 Frank Warmerdam <warmerdam@pobox.com>
3989 * libtiff/tif_strip.c: Remove an inappropriate assertion that often
3990 fails on oddly sized 12bit jpeg compressed ycbcr images.
3992 2009-06-22 Frank Warmerdam <warmerdam@pobox.com>
3994 * libtiff/tif_lzw.c: Fix buffer underflow bug.
3995 http://bugzilla.maptools.org/show_bug.cgi?id=2065
3997 2009-06-21 Frank Warmerdam <warmerdam@pobox.com>
3999 * configure.ac, libtiff/tif_jpeg.c, libtiff/tif_jpeg_12.c: add support
4000 for dual mode 8/12 bit jpeg support.
4002 2009-06-03 Frank Warmerdam <warmerdam@pobox.com>
4004 * libtiff/tif_write.c: do not override the planar configuration to be
4005 contig for one sample files if planar configuration is already set.
4006 http://bugzilla.maptools.org/show_bug.cgi?id=2057
4008 2009-06-02 Frank Warmerdam <warmerdam@pobox.com>
4010 * libtiff/libtiff.def: Add TIFFUnsetField.
4012 2009-05-03 Frank Warmerdam <warmerdam@pobox.com>
4014 * libtiff/{tif_jpeg.c,tif_ojpeg.c,tif_getimage.c}: Fixed various
4015 error reports to use "%s" as format string.
4016 http://trac.osgeo.org/gdal/ticket/2976
4018 2009-03-12 Frank Warmerdam <warmerdam@pobox.com>
4020 * libtiff/{tif_fax3.c,tif_jpeg.c,tif_ojpeg.c}: Fix printdir chaining
4021 for some codecs (#2020).
4023 2009-02-12 Frank Warmerdam <warmerdam@pobox.com>
4025 * libtiff/tif_luv.c: Fix handling of tiled logluv images.
4026 http://bugzilla.maptools.org/show_bug.cgi?id=2005
4028 2009-02-09 Frank Warmerdam <warmerdam@pobox.com>
4030 * libtiff/tif_dirread.c: Improve allocation safety when allocated
4031 buffer for large tags. (#1998) Related to (#1993)
4033 2009-02-06 Frank Warmerdam <warmerdam@pobox.com>
4035 * tools/tiffcrop.c: Don't default image->res_unit to INCH. Now the
4036 test suite should pass.
4038 2009-02-05 Frank Warmerdam <warmerdam@pobox.com>
4040 * libtiff/tif_dirread.c: Re-incorporated a sanity check on tag size,
4041 but at the 2GB boundary to avoid overflow on 32bit systems.
4042 http://bugzilla.maptools.org/show_bug.cgi?id=1993
4044 * libtiff/tif_dirread.c: Remove some assertions that blow due to
4045 corrupt files rather than in response to library internal
4047 http://bugzilla.maptools.org/show_bug.cgi?id=1995
4048 http://bugzilla.maptools.org/show_bug.cgi?id=1991
4050 * libtiff/tif_dirread.c: Fixed testing for failed result from
4051 TIFFReadDirectoryFindFieldInfo().
4052 http://bugzilla.maptools.org/show_bug.cgi?id=1992
4054 2009-01-23 Frank Warmerdam <warmerdam@pobox.com>
4056 * libtiff/tif_predict.c: Add support for 32bit integer horz. predictors.
4057 http://bugzilla.maptools.org/show_bug.cgi?id=1911
4059 * libtiff/tif_dirwrite.c: Fix byte swapping of next directory offset.
4061 http://bugzilla.maptools.org/show_bug.cgi?id=1924
4063 * tools/tiffcrop.c: initialize xres/yres values.
4065 * test/*.sh - default ${srcdir} to local directory.
4067 * test/common.sh - start verbose mode after common settings.
4069 * libtiff/tif_dirinfo.c: Replace lfind() with local equivalent to
4070 avoid type mismatches on different platforms.
4071 http://bugzilla.maptools.org/show_bug.cgi?id=1889
4073 2009-01-22 Frank Warmerdam <warmerdam@pobox.com>
4075 * tools/{fax2tiff.c,thumbnail.c,tiff2pdf.c,tiff2ps.c,tiffdump.c,
4076 tiffsplit.c}: avoid warnings, mostly 32bit/64bit casting issues.
4078 * port,tools: Introduce libport.h, and include in tools if NEED_LIBPORT
4079 defined, primarily to reduce prototype warnings on windows.
4081 * libtiff/tif_dirinfo.c,tif_dirread.c: Avoid warnings
4082 about unused parameters, and uninitialized variables.
4084 2009-01-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4086 * test/common.sh: Execute tests like 'make VERBOSE=TRUE check' in
4087 order to trace full execution detail while executing the test suite.
4089 2009-01-20 Frank Warmerdam <warmerdam@pobox.com>
4091 * tools/tiffsplit.c: fix sampleformat to be shortv instead of longv.
4093 2009-01-20 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4095 * test/Makefile.am (CLEANFILES): Make sure that test output files
4096 are removed by 'make clean'
4098 * Update autotools for 4.0.0 beta3
4100 * 4.0.0 beta3 produced.
4102 2009-01-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4104 * test/tiffcrop.sh: New test script for tiffcrop from Richard
4107 * tools/tiff2ps.c: Remove spurious message to stderr.
4109 2009-01-11 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4111 * tools/tiff2ps.c: Incorporated significant functionality update
4112 from Richard Nolde. In particular, support for rotating the image
4113 by 90, 180, 270, and 'auto' has been added.
4115 * man/tiffcrop.1: Incorporated documentation updates from Richard
4118 * tools/tiffcrop.c: Incorporated significant functionality update
4121 2008-12-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4123 * libtiff/tiffio.h: GCC will now validate format specifications
4124 for TIFFError(), TIFFErrorExt(), TIFFWarning(), and
4125 TIFFWarningExt() in order to reveal bugs.
4127 * Many fixes throughout to work better as a 64-bit build.
4129 2008-12-30 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4131 * tools/{tiff2pdf.c, tiff2ps.c, tiffinfo.c}: Offset and length
4132 tags now require 64-bit parameter rather than 32-bit.
4134 * libtiff/tif_dirread.c: Fixed issues with unaligned access to
4137 * tools/thumbnail.c: Eliminate crash noticed while running test
4140 2008-12-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4142 * libtiff/tif_ojpeg.c (OJPEGLibjpegJpegSourceMgrFillInputBuffer):
4143 Initialize stack variables to avoid compiler warning.
4145 * tools/tiffinfoce.c (main): Use toff_t for offset type when
4146 retrieving offset of EXIF IFD.
4148 * libtiff/tiffio.h: Undeprecate toff_t and restore its use in the
4149 TIFFClientOpen() callback and other external function definitions.
4151 * tools/tiffinfo.c (main): Offset to EXIF IFD requires a 64-bit
4152 type now. Fixes crash when dumping files containing an EXIF IFD.
4154 * m4/libtool.m4: Update to libtool 2.2.6.
4156 2008-12-21 Frank Warmerdam <warmerdam@pobox.com>
4158 * libtiff/tif_dir.c, tiffio.h: Introduce TIFFUnsetField() function.
4160 * libtiff/tif_jpeg.c: Avoid errors if the application writes a full
4161 strip for the last partial strip in a jpeg compressed file.
4162 http://bugzilla.maptools.org/show_bug.cgi?id=1981
4164 2008-10-29 Frank Warmerdam <warmerdam@pobox.com>
4166 * libtiff/tif_flush.c: Make sure that BEENWRITING is cleared when
4167 we take the shortcut to only update the strip/tile offsets in place.
4168 http://trac.osgeo.org/gdal/ticket/2621
4170 2008-10-21 Andrey Kiselev <dron@ak4719.spb.edu>
4172 * libtiff/tif_jbig.c: Support the JBIG-KIT 2.0 (compatibility with
4173 the older versions retained).
4175 2008-10-09 Frank Warmerdam <warmerdam@pobox.com>
4177 * libtiff/tif_jpeg.c: Add #ifdefs for changes needed if using
4178 IPP enabled version of libjpeg from Intel.
4179 http://bugzilla.maptools.org/show_bug.cgi?id=1951
4181 2008-09-05 Andrey Kiselev <dron@ak4719.spb.edu>
4183 * tools/tiffsplit.c: Use byte counts of proper size (uint64).
4184 Required for libtiff 4.0.
4186 * tools/tiffsplit.c: Use dynamically allocated array instead of static
4187 when constructing output file names.
4189 2008-09-03 Andrey Kiselev <dron@ak4719.spb.edu>
4191 * tools/tiffsplit.c: Get rid of unsafe strcpy()/strcat() calls when
4192 doing the filename/path construction.
4194 * tools/tiff2pdf.c: More appropriate format string in
4195 t2p_write_pdf_string(); avoid signed/unsigned mismatch.
4197 * libtiff/tif_lzw.c: Properly zero out the codetable. As per bug
4199 http://bugzilla.maptools.org/show_bug.cgi?id=1929
4201 * libtiff/tif_lzw.c: Properly zero out the string table. Fixes
4202 CVE-2008-2327 security issue.
4204 2008-09-01 Frank Warmerdam <warmerdam@pobox.com>
4206 * libtiff/tif_dirread.c: Avoid unused TIFFReadDirEntryFloat() function.
4208 * libtiff/tif_dirwrite.c: modified to write IFDs as either IFD8 or IFD
4209 depending on whether the file is bigtiff or classic tiff.
4210 http://bugzilla.maptools.org/show_bug.cgi?id=1917
4212 2008-08-12 Edward Lam <edward@sidefx.com>
4214 * tools/tiffdump.c: When compiling for Microsoft Windows, apply
4215 consistent (__int64) casting when testing if _lseeki64 has
4216 successfully sought as requested. This is necessary for large
4217 file support to work since off_t is only 32-bit.
4219 2008-07-29 Frank Warmerdam <warmerdam@pobox.com>
4221 * tif_strip.c: Replace assertions related to samplesperpixel != 3 or
4222 the subsampling values not being 1, 2 or 4 (for jpeg compressed images)
4223 with control logic to return runtime errors (c/o Even Rouault) (#1927).
4225 2008-06-17 Frank Warmerdam <warmerdam@pobox.com>
4227 * tools/tiffcrop.c: Fix some portability problems.
4229 * libtiff/tif_ojpeg.c: Use same jpeg/win32 boolean/FAR hacks as are
4232 * libtiff/tif_win32.c: Ensure TIFFOpenW() uses same FILE_SHARE flags
4235 2008-06-01 Frank Warmerdam <warmerdam@pobox.com>
4237 * libtiff/tif_dirwrite.c: Fix alignment problems affecting architectures
4239 http://bugzilla.maptools.org/show_bug.cgi?id=1892
4241 2008-05-27 Frank Warmerdam <warmerdam@pobox.com>
4243 * libtiff.def: Add TIFFFindField
4244 http://bugzilla.maptools.org/show_bug.cgi?id=1891
4246 2008-05-26 Frank Warmerdam <warmerdam@pobox.com>
4248 * tif_config.*.h, tiffconf.*.h: Remove SIZEOF_LONG definition, unused.
4250 * li2008-04-15 Andrey Kiselev <dron@ak4719.spb.edu>
4252 btiff/tif_win32.c: Replace custom Win32 memory api with generic
4253 POSIX one. No apparent value to use of GlobalAlloc() in the modern
4254 age. http://bugzilla.maptools.org/show_bug.cgi?id=1885
4256 * libtiff/tiffconf.vc.h: Added JBIG_SUPPORT and MDI_SUPPORT items
4257 in windows version (care of Edward Lam).
4259 2008-05-24 Frank Warmerdam <warmerdam@pobox.com>
4261 * tif_codec.c: Avoid NULL pointer dereferencing for exotic
4262 compression codec codes.
4264 * tif_dirwrite.c: fix potential memory leak.
4266 * tif_dirread.c: Fix unchecked malloc result.
4268 2008-05-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4270 * test {tiff2pdf.sh tiff2ps-EPS1.sh tiff2ps-PS1.sh tiff2ps-PS2.sh
4271 tiff2ps-PS3.sh tiffcp-g3-1d-fill.sh tiffcp-g3-1d.sh
4272 tiffcp-g3-2d-fill.sh tiffcp-g3-2d.sh tiffcp-g3.sh tiffcp-g4.sh
4273 tiffcp-split-join.sh tiffcp-split.sh tiffcp-thumbnail.sh
4274 tiffdump.sh tiffinfo.sh}: Added more test scripts based on
4275 suggestions from Lee Howard posted to the tiff list on 13 Sep
4278 2008-05-23 Frank Warmerdam <warmerdam@pobox.com>
4280 * libtiff/tif_fax3.c: Add an assert in an effort to detect a
4281 possible runtime problem reported by coverity.
4283 * contrib/iptcutil/iptcutil.c: Fixed memory leak of str.
4285 * tools/tiffcrop.c, man/tiffcrop.1: Major update from Richard Nolde.
4286 http://bugzilla.maptools.org/show_bug.cgi?id=1888
4288 * tools/tiffdither.c: remove dead onestrip code. avoid memory leak.
4290 * tools/rgb2ycbcr.c: fix memory leak of raster buffer.
4292 * tools/tiffcp.c: Simplify inknames code to avoid pointless test.
4293 Cleanup scanline allocation to avoid coverity warning.
4295 * tools/thumbnail.c: Check for TIFFOpen() failure.
4297 2008-05-18 Frank Warmerdam <warmerdam@pobox.com>
4299 * libtiff/tif_dirinfo.c: Use TIFF_SETGET_ASCII for PIXAR_TEXTUREFORMAT
4300 and PIXAR_WRAPMODES instead of TIFF_SETGET_UNDEFINED. Not exactly clear
4303 2008-05-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4305 * Makefile.am (ACLOCAL_AMFLAGS): Libtool 2.2.4 does not like
4306 "ACLOCAL_AMFLAGS=-I ./m4". It wants "ACLOCAL_AMFLAGS=-I m4".
4308 2008-04-15 Andrey Kiselev <dron@ak4719.spb.edu>
4310 * test/: Test suite updated. Everything is passed now.
4312 * libtiff/tif_dirinfo.c: Fixed description of the
4313 TIFFTAG_NUMBEROFINKS tag.
4315 2008-04-14 Andrey Kiselev <dron@ak4719.spb.edu>
4317 * libtiff/{tif_dirread.c, tif_dirwrite.c, tiffiop.h}:
4318 Get rid of some of "dereferencing type-punned" warnings by converting
4319 tdir_offset field of TIFFDirEntry structure into union.
4321 2008-04-10 Andrey Kiselev <dron@ak4719.spb.edu>
4323 * libtiff/{tif_flush.c, tif_dirwrite.c, tiffio.h, tiffiop.h}:
4324 TIFFRewriteField() renamed into _TIFFRewriteField() and moved out
4325 from the public interface. Type of its 'count' parameter changed
4326 from uint32 to tmsize_t.
4328 * /libtiff/tiffiop.h: Make tif_nfields and tif_nfieldscompat fields
4329 of the tiff structure have the size_t type instead of uint32.
4331 2008-04-09 Andrey Kiselev <dron@ak4719.spb.edu>
4333 * tools/tiffdump.c: Added support for MSVS 6.0.
4335 * libtiff/tif_dirread.c: Use custom functions _TIFFUInt64ToFloat()
4336 and _TIFFUInt64ToDouble() to convert 64-bit integers into floating
4337 point values on MSVS 6.0 platform.
4339 2008-03-14 Frank Warmerdam <warmerdam@pobox.com>
4341 * tif_dirread.c: Removed sanity checks on tags larger than 4MB in
4342 TIFFReadDirEntryArray() since they are interfering with seemingly
4343 legitimate files. http://trac.osgeo.org/gdal/ticket/2005
4345 2008-02-09 Joris Van Damme <joris.at.lebbeke@skynet.be>
4347 * tif_dirread.c: Added handling for the case of number of values for
4348 PageNumber tag different from 2 (previously resulted in an assert
4349 indicating lack of handling and was forgotten about)
4351 2008-02-01 Frank Warmerdam <warmerdam@pobox.com>
4353 * libtiff/tif_jpeg.c: Do not try to fixup subsampling tags based on
4354 the actual jpeg data stream if the first strip/tile has zero size.
4355 This is the case when GDAL creates a new file with zero sizes, closes
4358 2008-01-07 Frank Warmerdam <warmerdam@pobox.com>
4360 * tools/tiff2ps.c: fix up 64bit issues (from Edward Lam).
4362 2008-01-01 Frank Warmerdam <warmerdam@pobox.com>
4364 * libtiff/tif_dirwrite.c: #ifdef out lots of unused functions.
4366 * Makefile.vc, libtiff/Makefile.vc, tools/Makefile.vc: Improve clean
4369 * tools/tiffinfo.c, tools/tiffcmp.c, tools/gif2tiff.c, tools/bmp2tiff.c
4370 tools/tiff2pdf.c: Fix 64-bit warnings when compiling under MSVC 2005
4373 * tools/tiffset.c: Changes to reflect the fact that TIFFFieldWithTag()
4374 and TIFFFieldWithName() now return TIFFField pointers instead of
4375 TIFFFieldInfo pointers.
4377 * tools/tiffdump.c: Added ssize_t typedef on Windows since it doesn't
4378 exist. This makes it compile again on Windows
4380 * tif_aux.c, tif_getimage.c, tif_next.c, tif_predict.c, tif_win32.c,
4381 tiffconf.vc.h: Various 64bit fixes from Edward Lam identified on win64.
4383 * test/rewrite_tag.c: New test for TIFFRewriteField().
4385 2007-12-31 Frank Warmerdam <warmerdam@pobox.com>
4387 * tif_dirwrite.c: Added TIFFRewriteField(). This new function
4388 rewrites one field "on disk" updating an existing directory
4389 entry. Lots of limitations still...
4391 * tiffiop.h, tif_write.c, tif_dirread.c, tif_flush.c: Keep track of
4392 TIFF_DIRTYSTRIP separately from TIFF_DIRTYDIRECT to indicate that
4393 the strip offset/size values are dirty but nothing else about the
4394 directory is dirty. In flush handle "just stripmaps dirty" as a
4395 special case that just rewrites these values without otherwise
4396 modifying the directory on disk using TIFFRewriteField().
4398 We also modify logic so that in update mode the directory is not
4399 marked dirty on read, but only when something is changed. This
4400 means we need to keep track of updates to the stripmap stuff in
4401 TIFFAppendToStrip().
4403 2007-12-10 Frank Warmerdam <warmerdam@pobox.com>
4405 * tif_jpeg.c: Improve ability to switch between encoding and decoding
4406 in the jpeg code (gdal bug #2033).
4408 2007-11-23 Frank Warmerdam <warmerdam@pobox.com>
4410 * tif_dir.c, tif_dirread.c, tif_dirwrite.c, tif_read.c, tif_write.c,
4411 tiffiop.h: Added TIFF_BUF4WRITE flag to indicate if contents of the
4412 rawcp/rawcc buffer are for writing and thus may require flushing.
4413 Necessary to distinguish whether they need to be written to disk when
4414 in mixed read/write mode and doing a mixture of writing followed by
4415 reading. http://trac.osgeo.org/gdal/ticket/1758
4417 2007-11-23 Andrey Kiselev <dron@ak4719.spb.edu>
4419 * configure.com, libtiff/tif_vms.c: Better OpenVMS support. Patches
4420 from Alexey Chupahin.
4422 2007-11-02 Frank Warmerdam <warmerdam@pobox.com>
4424 * tif_write.c: Rip out the fancy logic in TIFFAppendToStrip() for
4425 establishing if an existing tile can be rewritten to the same location
4426 by comparing the current size to all the other blocks in the same
4427 directory. This is dangerous in many situations and can easily
4428 corrupt a file. (observed in esoteric GDAL situation that's hard to
4429 document). This change involves leaving the stripbytecount[] values
4430 unaltered till TIFFAppendToStrip(). Now we only write a block back
4431 to the same location it used to be at if the new data is the same
4432 size or smaller - otherwise we move it to the end of file.
4434 * tif_dirwrite.c: Try to avoid writing out a full readbuffer of tile
4435 data when writing the directory just because we have BEENWRITING at
4436 some point in the past. This was causing odd junk to be written out
4437 in a tile of data when a single tile had an interleaving of reading
4438 and writing with reading last. (highlighted by gdal
4439 autotest/gcore/tif_write.py test 7.
4441 * tif_predict.c: use working buffer in PredictorEncodeTile to avoid
4442 modifying callers buffer.
4443 http://trac.osgeo.org/gdal/ticket/1965
4445 * tif_predict.c/h: more fixes related to last item, keeping a
4446 distinct pfunc for encode and decode cases as these were getting
4448 http://trac.osgeo.org/gdal/ticket/1948
4450 2007-11-01 Frank Warmerdam <warmerdam@pobox.com>
4452 * tif_predict.c/h, tif_lzw.c, tif_zip.c: Improvements so that
4453 predictor based encoding and decoding works in read-write update
4455 http://trac.osgeo.org/gdal/ticket/1948
4457 2007-10-24 Joris Van Damme <joris.at.lebbeke@skynet.be>
4459 * tif_dirread.c: Fixed problem with bogus file triggering
4460 assert(td->td_planarconfig == PLANARCONFIG_CONTIG) in
4461 ChopUpSingleUncompressedStrip
4463 2007-10-22 Joris Van Damme <joris.at.lebbeke@skynet.be>
4465 * tif_jpeg.c: Resolved buffer incrementation bug that lead to faulty images
4466 at best, access violation at worst, when subsampled JPEG compressed imagery
4467 is decoded without the JPEG_COLORMODE feature
4469 2007-10-11 Frank Warmerdam <warmerdam@pobox.com>
4471 * html/index.html: Update "people responsible" section.
4473 2007-10-05 Frank Warmerdam <warmerdam@pobox.com>
4475 * tools/tiff2pdf.c: Fix problem with alpha setting in some cases
4476 as reported on the mailing list.
4478 2007-10-01 Joris Van Damme <joris.at.lebbeke@skynet.be>
4480 * changed some more incorrect %lud printf flags to %lu
4482 2007-09-29 Joris Van Damme <joris.at.lebbeke@skynet.be>
4484 * tif_dirread.c: Strip chopping interfered badly with uncompressed
4485 subsampled images because it tried to divide subsampled rowblocks,
4486 leading to all sorts of errors throughout the library for these
4487 images. Fixed by making strip chopping divide in row counts that
4488 are a multiple of vertical subsampling value.
4490 2007-09-28 Joris Van Damme <joris.at.lebbeke@skynet.be>
4492 * tif_dirread.c: Logical cast working around compiler warning
4494 * tif_read.c: Correction of some error flags and parameter lists
4496 2007-09-27 Joris Van Damme <joris.at.lebbeke@skynet.be>
4498 * tif_dirread.c: Made calculation of td_maxsamplevalue more robust
4499 when dealing with large bitspersample values, shutting up purification
4500 tools that warn about truncation, though it remains incorrect and
4501 indicates a conceptual problem there.
4503 * tif_open.c: Moved early exit in case of 'h' flag (to disable reading
4504 of first IFD) to proper place because it badly interfered with memory
4505 mapping, resulting in mapping flag even with dummy mapping functions
4506 that returned 0 whilst at the same time the mapping tif_size wasn't
4507 set, thus resulting in continuous incorrect beyond-eof errors.
4509 2007-09-24 Joris Van Damme <joris.at.lebbeke@skynet.be>
4511 * tif_dirinfo.c: Fixed (MSVC) compiler reports about
4512 inconsistent use of const in tiffFields and exifFields definition
4514 2007-09-20 Frank Warmerdam <warmerdam@pobox.com>
4516 * tif_dirwrite.c: Always write tile/strip offsets and sizes
4517 using LONG8 type when output format is BigTIFF. The
4518 TIFFWriteDirectoryTagLongLong8Array() function was restructured
4521 * tif_dirread.c: Improvements to error reporting text in
4522 TIFFFetchDirectory().
4524 2007-09-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4526 * test/images: Added a small collection of test images for use by
4527 test programs and scripts.
4528 * test/tiffinfo.sh: A trivial example test script.
4529 * test/common.sh: Added small script for setting the environment
4530 used by script-based tests.
4532 2007-08-24 Frank Warmerdam <warmerdam@pobox.com>
4534 * tif_dirwrite.c: Write the tif_nextdiroff value instead of a fixed
4535 zero when writing directory contents to preserve the ability to
4536 rewrite directories in place, even in the middle of a directory
4539 * tif_dirinfo.c: _TIFFMergeFields() now only merges in field
4540 definitions that are missing. Existing definitions are silently
4543 * tif_dirread.c: Add runtime error for fields for which no definition
4544 is found (in addition to an assert for developers) in
4545 TIFFFetchNormalTag(). Not sure if this is needed, but it seems
4548 2007-08-10 Joris Van Damme <joris.at.lebbeke@skynet.be>
4550 * libtiff/tif_getimage.c: removed SubsamplingHor and SubsamplingVer
4551 from _TIFFRGBAImage structure to revert unwanted ABI change.
4553 2007-08-10 Joris Van Damme <joris.at.lebbeke@skynet.be>
4555 * libtiff/tif_win32.c: use SetFilePointer instead of
4556 SetFilePointerEx, as per bug
4558 http://bugzilla.remotesensing.org/show_bug.cgi?id=1580
4560 2007-07-19 Andrey Kiselev <dron@ak4719.spb.edu>
4562 * libtiff/tif_stream.cxx: Put all callback functions declarations
4563 inside extern "C" block.
4565 * libtiff/{tif_lzw.c, tif_luv.c, tif_dumpmode.c, tif_print.c,
4566 tif_read.c, tif_strip.c, tif_thunder.c}: Use "%I64d" printf()
4567 formatter instead of "%lld" with MSVC compiler.
4569 * libtiff/{tiffiop.h, tif_aux.c}: Added _TIFFUInt64ToFloat() and
4570 _TIFFUInt64ToDouble() functions.
4572 2007-07-18 Andrey Kiselev <dron@ak4719.spb.edu>
4574 * libtiff/tif_dirread.c: Handle the case of MSVC 6 when using 64-bit
4577 * libtiff/{Makefile.am, Makefile.v}: Do not distribute tiffconf.h,
4578 remove tif_config.h/tiffconf.h during cleaning. As per bug
4580 http://bugzilla.remotesensing.org/show_bug.cgi?id=1573
4582 * libtiff/tif_unix.c: Do not use O_LARGEFILE. As per bug
4584 http://bugzilla.remotesensing.org/show_bug.cgi?id=1577
4586 2007-07-13 Andrey Kiselev <dron@ak4719.spb.edu>
4588 * libtiff 4.0.0alpha released.
4590 2007-07-12 Andrey Kiselev <dron@ak4719.spb.edu>
4592 * tools/tiff2pdf.c: Added missed extern optind as per bug
4594 http://bugzilla.remotesensing.org/show_bug.cgi?id=1567
4596 * libtiff/{tif_close.c, tif_dirinfo.c, tiffiop.c, tif_dirread.c,
4597 tif_dir.h, tif_dir.c, tiffio.h}: Transition to the new-style tag
4598 extending scheme completed.
4600 2007-07-11 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4602 * libtiff/tif_stream.cxx: Adapt to use toff_t again. Update to
4603 use standard C++ library size types and attempt to detect overflow
4606 2007-07-08 Andrey Kiselev <dron@ak4719.spb.edu>
4608 * libtiff/{tif_jpeg.c, tif_dir.h, tif_dir.c, tif_dirinfo.c, tiffio.h,
4609 tif_ojpeg.c, tif_print.c, tif_fax3.c, tif_dirread.c}: More work on new
4610 tag extending scheme. Use the new scheme everywhere.
4612 * libtiff/{tif_zip.c, tif_predict.c, tif_pixarlog.c, tif_luv.c,
4613 tif_fax3.c, tif_dirread.c, tif_dirwrite.c, tif_close.c, tif_ojpeg.c,
4614 tif_jpeg.c, tif_dirinfo.c, tif_dir.h, tiffio.h, tiffiop.h}:
4615 TIFFFIeldInfo structure replaced with TIFFField structure.
4616 TIFFFieldInfo retained for the backward compatibility.
4618 2007-07-05 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4620 * tools/tiff2pdf.c: Fix a compile problem when JPEG_SUPPORT is not
4623 2007-07-04 Andrey Kiselev <dron@ak4719.spb.edu>
4625 * libtiff/{tif_dir.c, tiff.h, tiffio.h, libtiff.def}: Unused
4626 TIFFReassignTagToIgnore() function and TIFFIgnoreSense enumeration
4629 * libtiff/{tif_dirinfo.c, tif_fax3.c, tif_jbig.c, tif_jpeg.c}: Move
4630 tags TIFFTAG_FAXRECVPARAMS, TIFFTAG_FAXSUBADDRESS,
4631 TIFFTAG_FAXRECVTIME and TIFFTAG_FAXDCS to the common tag directory.
4632 These tags are not codec-specific and relate to image content, so
4633 process them as other normal tags.
4635 * libtiff/{tiffio.h, tif_dir.h}: TIFFTagValue structure moved from the
4636 public tiffio.h to private tif_dir.h.
4638 * contrib/{acorn, mac-cw, mac-mpw}: Removed as unmaintained and
4641 2007-07-03 Andrey Kiselev <dron@ak4719.spb.edu>
4643 * libtiff{tif_acorn.c, tif_apple.c, tif_atari.c, tif_msdos.c,
4644 tif_win3.c}: Obsoleted portability stuff removed.
4646 * tools/tiff2ps.c: Added support 16-bit images as per bug
4648 http://bugzilla.remotesensing.org/show_bug.cgi?id=1566
4650 Patch from William Bader.
4652 * tools/tiff2pdf.c: Fix for TIFFTAG_JPEGTABLES tag fetching and
4653 significant upgrade of the whole utility as per bug
4655 http://bugzilla.remotesensing.org/show_bug.cgi?id=1560
4657 Now we don't need tiffiop.h in tiff2pdf anymore and will open output
4658 PDF file using TIFFClientOpen() machinery as it is implemented
4661 2007-06-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4663 * configure.ac: Fix typo when substituting value for unsigned 8 bit type.
4664 Added support for a TIFF_PTRDIFF_T type to use when doing pointer arithmetic.
4665 Added support for a TIFF_SSIZE_T in order to return memory sizes but still
4666 allow returning -1 for errors.
4667 * libtiff/tiffconf.vc.h: Add porting type defintions for WIN32.
4669 2007-06-25 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4671 * port/strtoull.c: New porting function in case strtoull() is not
4672 available on the target system.
4673 * configure.ac: Add configure support for determining sized types
4674 in a portable way and performing necessary substitutions in
4675 tif_config.h and tiffconf.h. Updated tiff.h to use the new
4678 2007-04-27 Andrey Kiselev <dron@ak4719.spb.edu>
4680 * tools/tiff2pdf.c: Check the tmpfile() return status as per bug
4682 http://bugzilla.remotesensing.org/show_bug.cgi?id=154
4684 2007-04-07 Andrey Kiselev <dron@ak4719.spb.edu>
4686 * libtiff/{tif_dir.h, tif_dirread.c, tif_dirinfo.c, tif_jpeg.c,
4687 tif_fax3.c, tif_jbig.c, tif_luv.c, tif_ojpeg.c, tif_pixarlog.c,
4688 tif_predict.c, tif_zip.c}: Finally fix bug
4690 http://bugzilla.remotesensing.org/show_bug.cgi?id=1274
4692 by introducing _TIFFMergeFieldInfo() returning integer error status
4693 instead of void in case of problems with field merging (e.g., if the
4694 field with such a tag already registered). TIFFMergeFieldInfo() in
4695 public API remains void. Use _TIFFMergeFieldInfo() everywhere and
4696 check returned value.
4698 2007-04-07 Frank Warmerdam <warmerdam@pobox.com>
4700 * contrib/addtiffo/tif_overview.c: Fix problems with odd sized output
4701 blocks in TIFF_DownSample_Subsampled() (bug 1542).
4703 2007-04-06 Frank Warmerdam <warmerdam@pobox.com>
4705 * libtiff/tif_jpeg.c: Changed JPEGInitializeLibJPEG() so that it
4706 will convert from decompressor to compressor or compress to decompress
4707 if required by the force arguments. This works around a problem in
4708 where the JPEGFixupTestSubsampling() may cause a decompressor to
4709 be setup on a directory when later a compressor is required with the
4710 force flag set. Occurs with the addtiffo program for instance.
4712 2007-04-06 Andrey Kiselev <dron@ak4719.spb.edu>
4714 * tools/tiffcrop.c, man/tiffcrop.1: Significant update in
4715 functionality from Richard Nolde. As per bug
4717 http://bugzilla.remotesensing.org/show_bug.cgi?id=1525
4719 2007-03-28 Frank Warmerdam <warmerdam@pobox.com>
4721 * libtiff/tif_fax3.c: "inline static" -> "static inline" for IRIC CC.
4723 2007-03-17 Joris Van Damme <joris.at.lebbeke@skynet.be>
4725 * start of BigTIFF upgrade - CVS HEAD unstable until further notice
4727 2007-03-07 Joris Van Damme <joris.at.lebbeke@skynet.be>
4729 * libtiff/tif_getimage.c: workaround for 'Fractional scanline' error reading
4730 OJPEG images with rowsperstrip that is not a multiple of vertical subsampling
4731 factor. This bug is mentioned in:
4732 http://bugzilla.remotesensing.org/show_bug.cgi?id=1390
4733 http://www.asmail.be/msg0054766825.html
4735 2007-03-07 Joris Van Damme <joris.at.lebbeke@skynet.be>
4737 * libtiff/tif_win32.c: made inclusion of windows.h unconditional
4739 * libtiff/tif_win32.c: replaced preprocessor indication for consiously
4740 unused arguments by standard C indication for the same
4742 2007-02-27 Andrey Kiselev <dron@ak4719.spb.edu>
4744 * libtiff/tif_dirread.c: Use uint32 type instead of tsize_t in byte
4745 counters in TIFFFetchData(). Should finally fix the issue
4747 http://bugzilla.remotesensing.org/show_bug.cgi?id=890
4749 2007-02-24 Andrey Kiselev <dron@ak4719.spb.edu>
4751 * tools/tiffset.c: Properly handle tags with TIFF_VARIABLE writecount.
4752 As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1350
4754 * libtiff/tif_dirread.c: Added special function to handle
4755 SubjectDistance EXIF tag as per bug
4757 http://bugzilla.remotesensing.org/show_bug.cgi?id=1362
4759 * tools/tiff2pdf.c: Do not assume inches when the resolution units
4760 do not specified. As per bug
4762 http://bugzilla.remotesensing.org/show_bug.cgi?id=1366
4764 * tools/{tiffcp.c, tiffcrop.c}: Do not change RowsPerStrip value if
4765 it was set as infinite. As per bug
4767 http://bugzilla.remotesensing.org/show_bug.cgi?id=1368
4769 * tools/tiffcrop.c, man/tiffcrop.1: New tiffcrop utility contributed
4770 by Richard Nolde. As per bug
4772 http://bugzilla.remotesensing.org/show_bug.cgi?id=1383
4774 2007-02-22 Andrey Kiselev <dron@ak4719.spb.edu>
4776 * libtiff/tif_dir.c: Workaround for incorrect TIFFs with
4777 ExtraSamples == 999 produced by Corel Draw. As per bug
4779 http://bugzilla.remotesensing.org/show_bug.cgi?id=1490
4781 * libtiff/{tif_dirread.c, tif_read.c}: Type of the byte counters
4782 changed from tsize_t to uint32 to be able to work with data arrays
4783 larger than 2GB. Fixes bug
4785 http://bugzilla.remotesensing.org/show_bug.cgi?id=890
4787 Idea submitted by Matt Hancher.
4789 2007-01-31 Andrey Kiselev <dron@ak4719.spb.edu>
4791 * tools/tif2rgba.c: This utility does not work properly on big-endian
4792 architectures. It was fixed including the bug
4794 http://bugzilla.remotesensing.org/show_bug.cgi?id=1149
4796 2007-01-15 Mateusz Loskot <mateusz@loskot.net>
4798 * Submitted libtiff port for Windows CE platform
4799 * libtiff/tif_config.wince.h: Added configuration header for WinCE.
4800 * libtiff/tiffconf.wince.h: Ported old configuration header for WinCE.
4801 * libtiff/tif_wince.c: Added WinCE-specific implementation of some
4802 functons from tif_win32.c.
4803 * libtiff/tif_win32.c: Disabled some functions already reimplemented in tif_wince.c.
4804 * libtiff/tiffiop.h, port/lfind.c: Added conditional include of some
4805 standard header files for Windows CE build.
4806 * tools/tiffinfoce.c: Ported tiffinfo utility for Windows CE.
4808 2006-11-19 Frank Warmerdam <warmerdam@pobox.com>
4810 * libtiff/tif_write.c: TIFFAppendToStrip() - clear sorted flag if
4812 http://bugzilla.remotesensing.org/show_bug.cgi?id=1359
4814 2006-10-13 Andrey Kiselev <dron@ak4719.spb.edu>
4816 * libtiff/tif_dir.c: More fixes for vulnerabilities, reported
4819 http://bugs.gentoo.org/show_bug.cgi?id=142383
4821 * libtiff/contrib/dbs/xtiff/xtiff.c: Make xtiff utility compilable.
4822 Though it is still far from the state of being working and useful.
4824 2006-10-12 Andrey Kiselev <dron@ak4719.spb.edu>
4826 * libtiff/tif_fax3.c: Save the state of printdir codec dependent
4829 * libtiff/tif_jpeg.c: Save the state of printdir codec dependent method
4830 as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1273
4832 * libtiff/tif_win32.c: Fixed problem with offset value manipulation
4833 as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1322
4835 * libtiff/{tif_read.c, tif_jpeg.c, tif_dir.c}: More fixes for
4836 vulnerabilities, reported in Gentoo bug ():
4838 http://bugs.gentoo.org/show_bug.cgi?id=142383
4840 2006-09-28 Andrey Kiselev <dron@ak4719.spb.edu>
4842 * libtiff/{tif_fax3.c, tif_next.c, tif_pixarlog.c}: Fixed multiple
4843 vulnerabilities, as per Gentoo bug ():
4845 http://bugs.gentoo.org/show_bug.cgi?id=142383
4847 2006-09-27 Frank Warmerdam <warmerdam@pobox.com>
4849 * libtiff/tif_lzw.c, libtiff/tif_zip.c: Fixed problems with mixing
4850 encoding and decoding on the same read-write TIFF handle. The LZW
4851 code can now maintain encode and decode state at the same time. The
4852 ZIP code will switch back and forth as needed.
4853 http://bugzilla.remotesensing.org/show_bug.cgi?id=757
4855 2006-09-20 Frank Warmerdam <warmerdam@pobox.com>
4857 * libtiff: Rename config.h.vc and tif_config.h.vc to config.vc.h and
4858 tif_config.vc.h for easier identification by folks using an IDE.
4860 2006-07-25 Frank Warmerdam <warmerdam@pobox.com>
4862 * tif_msdos.c: Avoid handle leak for failed opens. c/o Thierry Pierron
4864 2006-07-19 Frank Warmerdam <warmerdam@pobox.com>
4866 * tif_dirwrite.c: take care not to flush out buffer of strip/tile
4867 data in _TIFFWriteDirectory if TIFF_BEENWRITING not set. Relates
4868 to bug report by Peng Gao with black strip at bottom of images.
4870 2006-07-12 Frank Warmerdam <warmerdam@pobox.com>
4872 * tif_dirwrite.c: make sure to use uint32 for wordcount in
4873 TIFFWriteNormanTag if writecount is VARIABLE2 for ASCII fields.
4874 It already seems to have been done for other field types. Needed
4875 for "tiffset" on files with geotiff ascii text.
4877 2006-07-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4879 * {configure.ac, libtiff/tif_config.h.vc, libtiff/tif_jbig.c}
4880 (JBIGDecode): jbg_newlen is not available in older JBIG-KIT and
4881 its use does not appear to be required, so use it only when it is
4884 2006-06-24 Andrey Kiselev <dron@ak4719.spb.edu>
4886 * libtiff/tif_dirinfo.c: Added missed EXIF tag ColorSpace (40961).
4888 * libtiff/tif_dirread.c: Move IFD fetching code in the separate
4889 function TIFFFetchDirectory() avoiding code duplication in
4890 TIFFReadDirectory() and TIFFReadCustomDirectory().
4892 2006-06-19 Frank Warmerdam <warmerdam@pobox.com>
4894 * tools/tiff2pdf.c: Fix handling of -q values.
4895 http://bugzilla.remotesensing.org/show_bug.cgi?id=587
4897 2006-06-17 Frank Warmerdam <warmerdam@pobox.com>
4899 * tif_readdir.c: Added case in EstimateStripByteCounts() for tiled
4900 files. Modified TIFFReadDirectory() to not invoke
4901 EstimateStripByteCounts() for case where entry 0 and 1 are unequal
4902 but one of them is zero.
4903 http://bugzilla.remotesensing.org/show_bug.cgi?id=1204
4905 2006-06-08 Andrey Kiselev <dron@ak4719.spb.edu>
4907 * libtiff/{tif_open.c, tif_dirread.c, tiffiop.h}: Move IFD looping
4908 checking code in the separate function TIFFCheckDirOffset().
4910 * libtiff/tif_aux.c: Added _TIFFCheckRealloc() function.
4912 * tools/tiffcmp.c: Fixed floating point comparison logic as per bug
4914 http://bugzilla.remotesensing.org/show_bug.cgi?id=1191
4916 * libtiff/tif_fax3.c: Fixed problems in fax decoder as per bug
4918 http://bugzilla.remotesensing.org/show_bug.cgi?id=1194
4920 * tools/tiff2pdf.c: Fixed buffer overflow condition in
4921 t2p_write_pdf_string() as per bug
4923 http://bugzilla.remotesensing.org/show_bug.cgi?id=1196
4925 2006-06-07 Andrey Kiselev <dron@ak4719.spb.edu>
4927 * {configure, configure.ac, libtiff/tif_jbig.c, tools/tiffcp.c}: Added
4928 support for JBIG compression scheme (34661 code) contributed by Lee
4931 http://bugzilla.remotesensing.org/show_bug.cgi?id=896
4933 * configure, configure.ac: OJPEG support enabled by default.
4935 * contrib/ojpeg/: Removed. New OJPEG support does not need this patch.
4937 2006-06-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4939 * libtiff/{tif_dirinfo.c, tif_print.c} : Fix crash in
4940 TIFFPrintDirectory(). Joris Van Damme authored the fix.
4942 2006-04-21 Andrey Kiselev <dron@ak4719.spb.edu>
4944 * tools/tiff2pdf.c: Unified line ending characters (always use '\n')
4945 as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1163
4947 * README.vms, Makefile.am, configure.com, libtiff/{Makefile.am,
4948 tif_config.h-vms, tif_stream.cxx, tif_vms.c, tiffconf.h-vms}:
4949 Added support for OpenVMS by Alexey Chupahin, elvis_75@mail.ru.
4951 2006-04-20 Andrey Kiselev <dron@ak4719.spb.edu>
4953 * tools/{fax2ps.c, fax2tiff.c, ppm2tiff.c, ras2tiff.c, tiff2pdf.c}:
4954 Properly set the binary mode for stdin stream as per bug
4955 http://bugzilla.remotesensing.org/show_bug.cgi?id=1141
4957 * man/{bmp2tiff.1, fax2ps.1, fax2tiff.1, gif2tiff.1, ras2tiff.1,
4958 raw2tiff.1, rgb2ycbcr.1, sgi2tiff.1, tiff2bw.1, tiff2pdf.1, tiff2ps.1,
4959 tiff2rgba.1, tiffcmp.1, tiffcp.1, tiffdither.1, tiffdump.1, tiffgt.1,
4960 tiffset.1}: Improvements in page formatting as per bug
4961 http://bugzilla.remotesensing.org/show_bug.cgi?id=1140
4963 * html/tools.html, html/man/Makefile.am, tools/tiff2pdf.c: Fixed
4964 typos as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1139
4966 2006-04-18 Frank Warmerdam <warmerdam@pobox.com>
4968 * nmake.opt: use /EHsc for VS2005 compatibility. Also define
4969 _CRT_SECURE_NO_DEPRECATE to avoid noise on VS2005.
4971 2006-04-12 Joris Van Damme <joris.at.lebbeke@skynet.be>
4973 * libtiff/tif_getimage.c: Added support for planarconfig separate
4974 non-subsampled YCbCr (i.e. separate YCbCr with subsampling [1,1])
4976 2006-04-11 Joris Van Damme <joris.at.lebbeke@skynet.be>
4978 * libtiff/tif_getimage.c: Revision of all RGB(A) put routines
4979 - Conversion of unassociated alpha to associated alpha now done with
4980 more performant LUT, and calculation more correct
4981 - Conversion of 16bit data to 8bit data now done with
4982 more performant LUT, and calculation more correct
4983 - Bugfix of handling of 16bit RGB with unassociated alpha
4985 2006-04-11 Joris Van Damme <joris.at.lebbeke@skynet.be>
4987 * libtiff/tif_getimage.c:
4988 - When there is no alpha, gtTileSeparate and gtStripSeparate allocated
4989 buffer for alpha strile and filled it, only to never read it back.
4990 Removed allocation and fill.
4991 - Minor rename of vars in gtTileSeparate and gtStripSeparate
4992 anticipating planned functionality extension
4994 2006-04-08 Joris Van Damme <joris.at.lebbeke@skynet.be>
4996 * libtiff/tif_getimage.c: renamed pickTileContigCase to PickContigCase
4997 and pickTileSeparateCase to PickSeparateCase as both work on strips as
5000 * libtiff/tif_getimage.c: moved img->get selection from
5001 TIFFRGBAImageBegin into PickContigCase and PickSeparateCase to create
5002 logical hook for planned functionality extension
5004 2006-04-08 Joris Van Damme <joris.at.lebbeke@skynet.be>
5006 * libtiff/tif_ojpeg.c: resolved memory leak that was a consequence
5007 of inappropriate use of jpeg_abort instead of jpeg_destroy
5009 2006-04-07 Joris Van Damme <joris.at.lebbeke@skynet.be>
5011 * libtiff/tif_getimage.c: replaced usage of TIFFScanlineSize in
5012 gtStripContig with TIFFNewScanlineSize so as to fix buggy behaviour
5013 on subsampled images - this ought to get sorted when we feel brave
5014 enough to replace TIFFScanlineSize altogether
5016 * libtiff/tif_ojpeg.c: fixed bug in OJPEGReadSkip
5018 2006-04-04 Joris Van Damme <joris.at.lebbeke@skynet.be>
5020 * libtiff/tiffio.h: added new type tstrile_t
5022 * libtiff/tif_dir.h: changed types of td_stripsperimage and td_nstrips
5023 to new tstrile_t, types of td_stripoffset and td_stripbytecount to
5026 * libtiff/tif_ojpeg.c: totally new implementation
5028 * libtiff/tif_dirread.c: added several hacks to suit new support of
5031 * libtiff/tif_getimage.c: removed TIFFTAG_JPEGCOLORMODE handling
5032 of OJPEG images in favor of tif_getimage.c native handling of
5033 YCbCr and desubsampling
5035 2006-03-29 Frank Warmerdam <warmerdam@pobox.com>
5037 * libtiff/tif_jpeg.c: JPEGVSetField() so that altering the photometric
5038 interpretation causes the "upsampled" flag to be recomputed. Fixes
5039 peculiar bug where photometric flag had to be set before jpegcolormode
5042 2006-03-25 Joris Van Damme <joris.at.lebbeke@skynet.be>
5044 * libtiff/tif_jpeg.c: strip size related bugfix in encode raw
5046 * libtiff/tif_strip.c: temporarilly added two new versions of
5048 - TIFFNewScanlineSize: proposed new version, after all related
5049 issues and side-effects are sorted out
5050 - TIFFOldScanlineSize: old version, from prior to 2006-03-21 change
5051 This needs further sorting out.
5053 2006-03-25 Joris Van Damme <joris.at.lebbeke@skynet.be>
5055 * contrib/addtiffo/tif_ovrcache.c: bugfix to correctly pass size
5056 of last truncated strip data to TIFFWriteEncodedStrip
5058 2006-03-25 Joris Van Damme <joris.at.lebbeke@skynet.be>
5060 * libtiff/{tif_jpeg.c, tif_strip.c}: bugfix of tif_jpeg decode raw
5062 2006-03-25 Joris Van Damme <joris.at.lebbeke@skynet.be>
5064 * libtiff/tif_getimage.c: bugfix/rewrite of putcontig8bitYCbCr22tile
5066 * libtiff/tif_getimage.c: added putcontig8bitYCbCr12tile
5068 * libtiff/tif_read.c: added support for new TIFF_NOREADRAW flag to
5069 prepare the path for new tif_ojpeg.c
5071 2006-03-23 Andrey Kiselev <dron@ak4719.spb.edu>
5073 * libtiff 3.8.2 released.
5075 * tools/Makefile.am: Use runtime paths linker flags when rpath
5078 2006-03-21 Andrey Kiselev <dron@ak4719.spb.edu>
5080 * libtiff/libtiff.def: Added missed exports as per bug
5081 http://bugzilla.remotesensing.org/attachment.cgi?id=337
5083 * contrib/addtiffo/Makefile.vc, libtiff/Makefile.vc, port/Makefile.vc,
5084 tools/Makefile.vc: Makefiles improvements as per bug
5085 http://bugzilla.remotesensing.org/show_bug.cgi?id=1128
5087 * nmake.opt libtiff/{tif_config.h.vc, tif_unix.c, tiffio.h},
5088 tools/{fax2ps.c, fax2tiff.c, tiff2pdf.c}: Fixed win32 I/O functions
5089 usage as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1127
5091 * libtiff/tif_strip.c: Take subsampling in account when calculating
5094 * tools/tiffcp.c: Do not set RowsPerStrip bigger than image length.
5096 2006-03-17 Andrey Kiselev <dron@ak4719.spb.edu>
5098 * tools/fax2tiff.c: Fixed wrong TIFFerror() invocations as per bug
5099 http://bugzilla.remotesensing.org/show_bug.cgi?id=1125
5101 * tools/fax2ps.c: Fixed reading the input stream from stdin as per bug
5102 http://bugzilla.remotesensing.org/show_bug.cgi?id=1124
5104 2006-03-16 Andrey Kiselev <dron@ak4719.spb.edu>
5106 * libtiff/tiffiop.h: Added decalration for
5107 _TIFFSetDefaultCompressionState().
5109 * libtiff/{tif_jpeg.c, tif_fax3.c, tif_zip.c, tif_pixarlog.c,
5110 tif_lzw.c, tif_luv.c}: Use _TIFFSetDefaultCompressionState() in all
5111 codec cleanup methods. As per bug
5113 http://bugzilla.remotesensing.org/show_bug.cgi?id=1120
5115 2006-03-15 Andrey Kiselev <dron@ak4719.spb.edu>
5117 * libtiff/tif_jpeg.c: Do not cleanup codec state in TIFFInitJPEG(). As
5118 per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1119
5120 * tools/raw2tiff.c: Do not set RowsPerStrip larger than ImageLength.
5121 As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1110
5123 * libtiff/tiffiop.h: dblparam_t typedef removed; GLOBALDATA macro
5124 removed; move here the STRIP_SIZE_DEFAULT macro definition.
5126 * libtiff/{tif_dirread.c, tif_strip.c}: Removed STRIP_SIZE_DEFAULT
5129 * libtiff/tif_dir.c: Use double type instead of dblparam_t.
5131 2006-03-14 Andrey Kiselev <dron@ak4719.spb.edu>
5133 * libtiff/tif_dirread.c: Do not check the PlanarConfig tag presence
5134 in TIFFReadDirectory, because it is always set at the start of
5135 function and we allow TIFFs without that tag set.
5137 2005-03-13 Andrey Kiselev <dron@ak4719.spb.edu>
5139 * libtiff 3.8.1 released.
5141 2006-03-07 Andrey Kiselev <dron@ak4719.spb.edu>
5143 * libtiff/tif_dirread.c: Fixed error reporting in TIFFFetchAnyArray()
5145 http://bugzilla.remotesensing.org/show_bug.cgi?id=1102
5147 * libtiff/tif_dirread.c: More wise check for integer overflow
5148 condition as per bug
5149 http://bugzilla.remotesensing.org/show_bug.cgi?id=1102
5151 * libtiff/{tif_jpeg.c, tif_pixarlog.c, tif_fax3.c, tif_zip.c}:
5152 Properly restore setfield/getfield methods in cleanup functions. As
5153 per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1102
5155 2006-03-03 Andrey Kiselev <dron@ak4719.spb.edu>
5157 * libtiff/{tif_predict.c, tif_predict.h}: Added new function
5158 TIFFPredictorCleanup() to restore parent decode/encode/field methods.
5160 * libtiff/{tif_lzw.c, tif_pixarlog.c, tif_zip.c}: Use
5161 TIFFPredictorCleanup() in codec cleanup methods. As per bug
5163 http://bugzilla.remotesensing.org/show_bug.cgi?id=1102
5165 * libtiff/tif_dirread.c: Fixed integer overflow condition in
5166 TIFFFetchData() function. As per bug
5168 http://bugzilla.remotesensing.org/show_bug.cgi?id=1102
5170 2006-03-01 Andrey Kiselev <dron@ak4719.spb.edu>
5172 * libtiff/tif_ojpeg.c: Set the ReferenceBlackWhite with the
5173 TIFFSetField() method, not directly. As per bug
5175 http://bugzilla.remotesensing.org/show_bug.cgi?id=1043
5177 * tools/ppm2tiff.c: Added support for PBM files as per bug
5178 http://bugzilla.remotesensing.org/show_bug.cgi?id=1044
5180 2006-02-27 Andrey Kiselev <dron@ak4719.spb.edu>
5182 * libtiff/tif_write.c: Small code rearrangement in TIFFWriteScanline()
5183 to avoid crash as per bug
5185 http://bugzilla.remotesensing.org/show_bug.cgi?id=1081.
5187 2006-02-26 Andrey Kiselev <dron@ak4719.spb.edu>
5189 * tools/tiff2pdf.c: Functions t2p_sample_rgbaa_to_rgb() and
5190 t2p_sample_rgba_to_rgb() was used in place of each other, that was
5191 resulted in problems with RGBA images with associated alpha.
5192 As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1097
5194 2006-02-23 Andrey Kiselev <dron@ak4719.spb.edu>
5196 * libtiff/tif_dirwrite.c: Properly write TIFFTAG_DOTRANGE tag as per
5197 bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1088.
5199 * libtiff/tif_print.c: Properly read TIFFTAG_PAGENUMBER,
5200 TIFFTAG_HALFTONEHINTS, TIFFTAG_YCBCRSUBSAMPLING and TIFFTAG_DOTRANGE
5201 tags as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1088.
5203 * tools/tiff2ps.c: Properly scale all the pages when converting
5204 multipage TIFF with /width/height/center options set. As per bug
5206 http://bugzilla.remotesensing.org/show_bug.cgi?id=1080
5208 2006-02-15 Andrey Kiselev <dron@ak4719.spb.edu>
5210 * tools/tiff2pdf.c: Do not create output file until all option checks
5211 will be done. As per bug
5213 http://bugzilla.remotesensing.org/show_bug.cgi?id=1072
5215 * tools/bmp2tiff.c: Added ability to create multipage TIFFs from the
5216 list of input files as per bug:
5218 http://bugzilla.remotesensing.org/show_bug.cgi?id=1077
5220 2006-02-09 Andrey Kiselev <dron@ak4719.spb.edu>
5222 * libtiff/tif_tile.c: Fix error reporting in TIFFCheckTile() as per
5223 bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1063.
5225 * tools/tiffgt.c: Avoid crashing in case of image unsupported by
5226 TIFFRGBAImage interface.
5228 * libtiff/tif_color.c: Avoid overflow in case of wrong input as per
5229 bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1065.
5231 2006-02-07 Frank Warmerdam <warmerdam@pobox.com>
5233 * tools/tiff2pdf.c: Fixed support for non-YCbCr encoded JPEG
5234 compressed TIFF files, per submission from Dan Cobra.
5236 2006-02-07 Andrey Kiselev <dron@ak4719.spb.edu>
5238 * libtiff/{tif_dirread.c, tif_packbits.c, tif_win32.c}: Properly
5239 cast values to avoid warnings. As per bug
5240 http://bugzilla.remotesensing.org/show_bug.cgi?id=1033.
5242 * libtiff/tif_dirinfo.c: Use TIFF_NOTYPE instead of 0 when
5243 appropriate. As per bug
5244 http://bugzilla.remotesensing.org/show_bug.cgi?id=1033.
5246 * libtiff/tif_aux.c: Fixed type of temporary variable in
5247 _TIFFCheckMalloc() as per bug
5248 http://bugzilla.remotesensing.org/show_bug.cgi?id=1033.
5250 2006-02-06 Andrey Kiselev <dron@ak4719.spb.edu>
5252 * libtiff/tif_aux.c: Return static array when fetching default
5253 YCbCrCoefficients (another problem, reported a the
5254 http://bugzilla.remotesensing.org/show_bug.cgi?id=1029 entry).
5256 2006-02-03 Andrey Kiselev <dron@ak4719.spb.edu>
5258 * libtiff/tif_dir.c: Special handling for PageNumber, HalftoneHints,
5259 YCbCrSubsampling and DotRange tags as per bugs
5261 http://bugzilla.remotesensing.org/show_bug.cgi?id=1029
5262 http://bugzilla.remotesensing.org/show_bug.cgi?id=1034
5264 * libtiff/tif_dirread.c: Use _TIFFGetExifFieldInfo() instead of
5265 _TIFFGetFieldInfo() in TIFFReadEXIFDirectory() call as per bug
5267 http://bugzilla.remotesensing.org/show_bug.cgi?id=1026.
5269 2006-01-23 Andrey Kiselev <dron@ak4719.spb.edu>
5271 * libtool related stuff updated from the 2.1a branch.
5273 2006-01-11 Frank Warmerdam <warmerdam@pobox.com>
5275 * tools/bmp2tiff,pal2rgb,ppm2tiff,ras2tiff,raw2tiff,sgi2tiff,
5276 tiff2bw,tiffcp: Fixed jpeg option processing so -c jpeg:r:50 works
5277 properly as per bug:
5278 http://bugzilla.remotesensing.org/show_bug.cgi?id=1025
5280 2006-01-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
5282 * configure.ac: Fix with_default_strip_size comparison as reported
5285 2006-01-08 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
5287 * test/Makefile.am (LIBTIFF): Due to linking against libtiff
5288 incorrectly, tests were not actually testing the uninstalled
5289 libtiff. Now they are.
5291 2006-01-04 Andrey Kiselev <dron@ak4719.spb.edu>
5293 * libtiff/tif_dirinfo.c: Change definitions for TIFFTAG_ICCPROFILE,
5294 TIFFTAG_PHOTOSHOP, TIFFTAG_RICHTIFFIPTC, TIFFTAG_XMLPACKET: readcount
5295 should be uint32 value.
5297 2006-01-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
5299 * html/man/Makefile.am (htmldoc): Fix htmldoc rule so that it can
5300 be used if build directory is not the same as source directory.
5301 * man/{TIFFGetField.3tiff, TIFFSetField.3tiff}: Documented
5302 TIFFTAG_PHOTOSHOP, TIFFTAG_RICHTIFFIPTC, and TIFFTAG_XMLPACKET,
5303 and re-sorted tag names in alphabetical order.
5305 2005-12-29 Andrey Kiselev <dron@ak4719.spb.edu>
5307 * libtiff 3.8.0 released.
5309 2005-12-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
5311 * tools/bmp2tiff.c (main): Fixed warning regarding returning
5312 inconsistent types from a condition.
5313 * tools/tiffcmp.c (CheckLongTag): Eliminate warning due to printf
5315 * tools/bmp2tiff.c: Reduce compilation warnings on big-endian CPUs.
5317 2005-12-28 Joris Van Damme <joris.at.lebbeke@skynet.be>
5319 * html/{index.html, support.hml, libtiff.html}: Cleaned up HTML
5321 2005-12-27 Andrey Kiselev <dron@ak4719.spb.edu>
5323 * libtiff/tiffio.h: Added VC_EXTRALEAN definition before including
5324 windows.h, to reduce the compile time.
5326 2005-12-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
5328 * libtiff/tif_jpeg.c: Improve compilation under MinGW.
5330 2005-12-26 Andrey Kiselev <dron@ak4719.spb.edu>
5332 * libtiff/{tif_dir.c, tif_dir.h, tif_dirread.c, tif_dirinfo.c}:
5333 tiffFieldInfo and exifFieldInfo arrays definitions moved back to
5334 tif_dirinfo.c; added _TIFFGetFieldInfo() and _TIFFGetExifFieldInfo()
5335 private functions to retrieve FieldInfo arrays.
5337 2005-12-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
5339 * html/build.html: Added some additional instructions for when
5340 building using MSVC under Windows. Also fixed two HTML syntax
5341 errors and used HTML Tidy to tidy up the HTML syntax and
5344 2005-12-24 Andrey Kiselev <dron@ak4719.spb.edu>
5346 * libtiff/{tif_aux.c, tif_dir.c, tif_dir.h, tif_dirwrite.c,
5347 tif_print.c, tif_getimage.c}: Make InkSet, NumberOfInks, DotRange and
5348 StoNits tags custom.
5350 2005-12-23 Andrey Kiselev <dron@ak4719.spb.edu>
5352 * libtiff/{tif_aux.c, tif_dir.c, tif_dir.h, tif_print.c}: Make
5353 WhitePoint tag custom.
5355 * libtiff/{tif_dir.h, tiff.h}: More EXIF tags added.
5357 2005-12-23 Joris Van Damme <joris.at.lebbeke@skynet.be>
5359 * libtiff/tiffio.h: fixed typo that potentially resulted in
5360 redefininition of USE_WIN32_FILEIO
5362 * libtiff/*: Added more 'dual-mode' error handling: Done TIFFWarning
5363 calls in core LibTiff.
5365 2005-12-21 Andrey Kiselev <dron@ak4719.spb.edu>
5367 * libtiff/{tif_dir.c, tif_dir.h, tif_print.c}: Make RichTIFFIPTC,
5368 Photoshop and ICCProfile tags custom.
5370 2005-12-21 Joris Van Damme <joris.at.lebbeke@skynet.be>
5372 * libtiff/*, contrib/*: Added 'dual-mode' error handling, enabling
5373 newer code to get context indicator in error handler and still
5374 remain compatible with older code: Done TIFFError calls everywhere
5377 2005-12-20 Andrey Kiselev <dron@ak4719.spb.edu>
5379 * tools/tiffcp.c: Added many error reporting messages; fixed integer
5382 http://bugzilla.remotesensing.org/show_bug.cgi?id=789
5384 2005-12-16 Frank Warmerdam <warmerdam@pobox.com>
5386 * contrib/addtiffo/*: Major upgrade by Joris to support subsampled
5387 YCbCr images in jpeg compressed TIFF files.
5389 2005-12-14 Andrey Kiselev <dron@ak4719.spb.edu>
5391 * tools/tiffcp.c: Return non-zero status when reading fails (again).
5393 2005-12-13 Andrey Kiselev <dron@ak4719.spb.edu>
5395 * tools/tiffcp.c: Return non-zero status when reading fails.
5397 2005-12-12 Andrey Kiselev <dron@ak4719.spb.edu>
5399 * libtiff/{tif_dir.h, tiff.h}: Added more EXIF tags.
5401 2005-12-09 Andrey Kiselev <dron@ak4719.spb.edu>
5403 * libtiff/{tif_dir.c, tif_dir.h, tif_print.c}: Make XMLPacket tag
5406 * tools/tiffinfo.c: Print EXIF directory contents if exist.
5408 * libtiff/tiff.h: Few EXIF tag numbers added.
5410 * libtiff/{tif_dirinfo.c, tif_dirread.c, tif_dir.h, tif_dir.c,
5411 tiffio.h}: Preliminary support to read custom directories. New
5412 functions: TIFFReadCustomDirectory() and TIFFReadEXIFDirectory().
5414 2005-12-07 Andrey Kiselev <dron@ak4719.spb.edu>
5416 * libtiff/{tif_dirinfo.c, tif_dirread.c, tif_dir.h, tif_dir.c}:
5417 More work to implement custom directory read support.
5419 * libtiff/{tif_aux.c, tif_dirinfo.c, tif_dirread.c, tif_dir.h,
5420 tif_dir.c, tif_print.c}: Make YCbCrCoefficients and ReferenceBlackWhite
5423 2005-12-05 Andrey Kiselev <dron@ak4719.spb.edu>
5425 * libtiff/tif_dirread.c: One more workaround for broken
5426 StripByteCounts tag. Handle the case when StripByteCounts array filled
5427 with completely wrong values.
5429 2005-11-30 Andrey Kiselev <dron@ak4719.spb.edu>
5431 * libtiff/tif_dirinfo.c: Release file descriptor in case of failure
5432 in the TIFFOpenW() function as per bug
5434 http://bugzilla.remotesensing.org/show_bug.cgi?id=1003
5436 * libtiff/tif_dirinfo.c: Correctly yse bsearch() and lfind()
5437 functions as per bug
5439 http://bugzilla.remotesensing.org/show_bug.cgi?id=1008
5441 2005-11-20 Frank Warmerdam <warmerdam@pobox.com>
5443 * tif_open.c, tiff.h, tiffdump.c: Incorporate preliminary support
5445 http://bugzilla.remotesensing.org/show_bug.cgi?id=1002
5447 * .cvsignore: many files added, and a few update according
5448 to suggestion of Brad HArds on tiff mailing list.
5450 2005-11-03 Frank Warmerdam <warmerdam@pobox.com>
5452 * libtiff/libtiff.def, tiffiop.h, tiffio.h: Made TIFFFreeDirectory
5455 2005-10-31 Andrey Kiselev <dron@ak4719.spb.edu>
5457 * tools/fax2tiff.c: Properly calculate sizes of temporary arrays
5460 http://bugzilla.remotesensing.org/show_bug.cgi?id=943
5462 * tools/fax2tiff.c: Added option '-r' to set RowsPerStrip parameter
5465 http://bugzilla.remotesensing.org/show_bug.cgi?id=944
5467 * tools/tiffdump.c: Fixed typeshift and typemask arrays initialization
5470 http://bugzilla.remotesensing.org/show_bug.cgi?id=946
5472 * tools/bmp2tiff.c: Fixed possible integer overflow error as per bug
5474 http://bugzilla.remotesensing.org/show_bug.cgi?id=965
5476 * libtiff/tif_dirinfo.c: Make XResolution, YResolution and
5477 ResolutionUnit tags modifiable during write process. As per bug
5479 http://bugzilla.remotesensing.org/show_bug.cgi?id=977
5481 * tools/tiffsplit.c: Copy fax related fields over splitted parts
5484 http://bugzilla.remotesensing.org/show_bug.cgi?id=983
5486 2005-10-21 Frank Warmerdam <warmerdam@pobox.com>
5488 * tif_dirread.c: Don't try and split single strips into "0" strips
5489 in ChopUpSingleUncompressedStrip. This happens in some degenerate
5490 cases (like 1x1 files with stripbytecounts==0 (gtsmall.jp2 embed tiff)
5492 2005-10-20 Joris Van Damme <joris.at.lebbeke@skynet.be>
5494 * tif_fax3.c: changed 'at scanline ...' style warning/errors
5495 with incorrect use of tif_row, to 'at line ... of
5496 strip/tile ...' style
5498 2005-10-15 Frank Warmerdam <warmerdam@pobox.com>
5500 * tif_write.c: fixed setting of planarconfig as per bug report
5501 on the mailing list from Joris.
5503 2005-10-07 Andrey Kiselev <dron@ak4719.spb.edu>
5505 * configure.ac, configure, nmake.opt, libtiff/{tif_config.h,
5506 tif_dirread.c}: Make the default strip size configurable via the
5507 --with-default-strip-size and STRIP_SIZE_DEFAULT options.
5509 2005-09-30 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
5511 * html/support.html: Fixed link to documentation on Greg Ward's
5514 2005-09-28 Andrey Kiselev <dron@ak4719.spb.edu>
5516 * tools/tiffdump.c: Fixed crash when reading malformed tags.
5518 2005-09-20 Andrey Kiselev <dron@ak4719.spb.edu>
5520 * tools/tiff2pdf.c: Added missed 'break' statement as per bug
5521 http://bugzilla.remotesensing.org/show_bug.cgi?id=932
5523 2005-09-12 Andrey Kiselev <dron@ak4719.spb.edu>
5525 * libtiff 3.7.4 released.
5527 * {configure, configure.ac, Makefile.am, autogen.sh}: Applied patch
5528 from Patrick Welche (all scripts moved in the 'config' and 'm4'
5531 2005-09-12 Frank Warmerdam <warmerdam@pobox.com>
5533 * libtiff/tif_open.c: reintroduce seek to avoid problem on solaris.
5535 2005-09-05 Frank Warmerdam <warmerdam@pobox.com>
5537 * libtiff/tif_dir.c: When prefreeing tv->value in TIFFSetFieldV
5538 also set it to NULL to avoid double free when re-setting custom
5539 string fields as per:
5541 http://bugzilla.remotesensing.org/show_bug.cgi?id=922
5543 2005-08-12 Frank Warmerdam <warmerdam@pobox.com>
5545 * libtiff/tif_print.c: avoid signed/unsigned warning.
5547 * libtiff/tif_dirread.c: removed unused variable.
5549 2005-07-30 Frank Warmerdam <warmerdam@pobox.com>
5551 * libtiff/tif_dir.c: Fixed up support for swapping "double complex"
5552 values (128 bits as 2 64 bits doubles). GDAL gcore tests now
5553 pass on bigendian (macosx) system.
5555 2005-07-28 Andrey Kiselev <dron@ak4719.spb.edu>
5557 * libtiff/{tif_aux.c, tif_dirread.c, tif_fax3.c, tiffiop.h}: Rename
5558 CheckMalloc() function to _TIFFCheckMalloc() and make it available
5559 globally as an internal helper routine.
5561 2005-07-27 Andrey Kiselev <dron@ak4719.spb.edu>
5563 * libtiff/tif_dir.c: More improvements in the "pass by value" part of
5564 the custom tags handling code.
5566 2005-07-26 Andrey Kiselev <dron@ak4719.spb.edu>
5568 * libtiff/{tif_dirread.c, tif_dirinfo.c}: Do not upcast BYTEs to
5569 SHORTs in the TIFFFetchByteArray(). Remove TIFFFetchExtraSamples()
5570 function, use TIFFFetchNormalTag() instead as per bug
5572 http://bugzilla.remotesensing.org/show_bug.cgi?id=831
5574 Remove TIFFFetchExtraSamples() function, use TIFFFetchNormalTag()
5577 * libtiff/tiffconf.h.in: One more attempt to fix the AIX bug
5579 http://bugzilla.remotesensing.org/show_bug.cgi?id=39
5581 2005-07-25 Andrey Kiselev <dron@ak4719.spb.edu>
5583 * libtiff/tif_print.c: Fixed printing of the BYTE and SBYTE arrays.
5585 * tools/tiffdump.c: Added support for TIFF_IFD datatype.
5587 2005-07-21 Andrey Kiselev <dron@ak4719.spb.edu>
5589 * libtiff/tif_write.c: Do not check the PlanarConfiguration field in
5590 the TIFFWriteCheck() function in case of single band images (as per
5593 2005-07-12 Andrey Kiselev <dron@ak4719.spb.edu>
5595 * SConstruct, libtiff/SConstruct: Added the first very preliminary
5596 support for SCons software building tool (http://www.scons.org/).
5597 This is experimental infrastructure and it will exist along with the
5598 autotools mechanics.
5600 2005-07-07 Andrey Kiselev <dron@ak4719.spb.edu>
5602 * port/{getopt.c, strcasecmp.c, strtoul.c}: Update modules from
5603 the NetBSD source tree (the old 4-clause BSD license changed to
5604 the new 3-clause one).
5606 * configure.ac, port/lfind.c, libtiff/tiffiop.h: Added lfind()
5609 * port/dummy.c: Make the dummy function static.
5611 2005-07-06 Andrey Kiselev <dron@ak4719.spb.edu>
5613 * tools/tiffcp.c: Fixed WhitePoint tag copying.
5615 * libtiff/{tif_dir.c, tif_dir.h, tif_dirinfo.c, tif_print.c}:
5616 Make FieldOfViewCotangent, MatrixWorldToScreen, MatrixWorldToCamera,
5617 ImageFullWidth, ImageFullLength and PrimaryChromaticities tags custom.
5619 2005-07-04 Andrey Kiselev <dron@ak4719.spb.edu>
5621 * libtiff 3.7.3 released.
5623 * configure, configure.ac: Do not use empty -R option when linking
5624 with --enable-rpath.
5626 2005-07-01 Andrey Kiselev <dron@ak4719.spb.edu>
5628 * libtiff/{tiffiop.h, tif_open.c}: Added open option 'h' to avoid
5629 reading the first IFD when needed. As per bug
5631 http://bugzilla.remotesensing.org/show_bug.cgi?id=875
5633 * libtiff/tif_color.c: Better use of TIFFmin() macro to avoid side
5636 2005-06-23 Andrey Kiselev <dron@ak4719.spb.edu>
5638 * tools/tiff2pdf.c: Print two characters per loop in the
5639 t2p_write_pdf_trailer(). As per bug
5641 http://bugzilla.remotesensing.org/show_bug.cgi?id=594
5643 * tools/tiffgt.c: Use MacOS X OpenGL framework when appropriate. As
5646 http://bugzilla.remotesensing.org/show_bug.cgi?id=844
5648 * acinclude.m4: Updated to latest OpenGL test macros versions.
5650 * libtiff/tiff.h: Use correct int size on Sparc 64bit/Sun compiler
5651 platform. As per bug
5653 http://bugzilla.remotesensing.org/show_bug.cgi?id=855
5655 2005-06-14 Andrey Kiselev <dron@ak4719.spb.edu>
5657 * libtiff/tif_dirinfo.c: Added support for ClipPath, XClipPathUnits
5658 and YClipPathUnits tags.
5660 2005-06-07 Andrey Kiselev <dron@ak4719.spb.edu>
5662 * contrib/addtiffo/tif_ovrcache.c: Properly extract tile/strip size;
5663 use pixel sized shift in contigous case.
5665 2005-06-06 Andrey Kiselev <dron@ak4719.spb.edu>
5667 * contrib/addtiffo/{tif_overview.c, tif_ovrcache.c, tif_ovrcache.h}:
5668 Make overviews working for contiguos images.
5670 2005-06-03 Andrey Kiselev <dron@ak4719.spb.edu>
5672 * libtiff/tif_open.c: Replace runtime endianness check with the compile
5675 * libtiff/tif_predict.c: Floating point predictor now works on
5678 2005-06-01 Andrey Kiselev <dron@ak4719.spb.edu>
5680 * libtiff/tif_dir.c: Use _TIFFsetString() function when read custom
5683 * libtiff/{tif_dirinfo.c, tif_dir.h, tif_dir.c, tif_print.c}: Make
5684 DocumentName, Artist, HostComputer, ImageDescription, Make, Model,
5685 Copyright, DateTime, PageName, TextureFormat, TextureWrapModes and
5686 TargetPrinter tags custom.
5688 * libtiff/tif_jpeg.c: Cleanup the codec state depending on
5689 TIFF_CODERSETUP flag (to fix memry leaks).
5691 * libtiff/tif_jpeg.c: Initialize JPEGTables array with zero after
5694 2005-05-26 Andrey Kiselev <dron@ak4719.spb.edu>
5696 * configure.ac, libtiff/Makefile.am: Added workaround for
5697 OpenBSD/MirOS soname problem as per bug
5699 http://bugzilla.remotesensing.org/show_bug.cgi?id=838
5701 * libtiff/tif_dirwrite.c: Use tdir_count when calling
5702 TIFFCvtNativeToIEEEDouble() in the TIFFWriteDoubleArray() function as
5705 http://bugzilla.remotesensing.org/show_bug.cgi?id=845
5707 2005-05-25 Andrey Kiselev <dron@ak4719.spb.edu>
5709 * tools/ppm2tiff.c: Fixed format string when read PPM file header with
5710 the fscanf() function. As per bug
5712 http://bugzilla.remotesensing.org/show_bug.cgi?id=861
5714 * libtiff/{tif_dirinfo.c, tif_print.c}: TIFFFetchByteArray() returns
5715 uint16 array when fetching the BYTE and SBYTE filds, so we should
5716 consider result as pointer to uint16 array and not as array of chars.
5719 http://bugzilla.remotesensing.org/show_bug.cgi?id=831
5721 * libtiff/tif_dir.c: More efficient custom tags retrieval as per bug
5723 http://bugzilla.remotesensing.org/show_bug.cgi?id=830
5725 * libtiff/tif_win32.c: Use FILE_SHARE_READ | FILE_SHARE_WRITE share
5726 mode in CreateFile() call as per bug
5728 http://bugzilla.remotesensing.org/show_bug.cgi?id=829
5730 * libtiff/Makefile.am: Fixed parallel compilation of the libtiff and
5731 libtiffxx libraries as per bug
5733 http://bugzilla.remotesensing.org/show_bug.cgi?id=826
5735 * contrib/addtiffo/{tif_overview.c, tif_ovrcache.h}: Sinchronized with
5738 2005-05-23 Frank Warmerdam <warmerdam@pobox.com>
5740 * libtiff/tif_jpeg.c: Substantial fix for addtiffo problems with
5741 JPEG encoded TIFF files. Pre-allocate lots of space for jpegtables
5744 2005-05-22 Frank Warmerdam <warmerdam@pobox.com>
5746 * libtiff/tif_dirread.c: Changed the code that computes
5747 stripbytecount[0] if it appears bogus to ignore if stripoffset[0] is
5748 zero. This is a common case with GDAL indicating a "null" tile/strip.
5750 2005-05-17 Andrey Kiselev <dron@ak4719.spb.edu>
5752 * tools/tiffsplit.c: Check for JPEGTables tag presence before copying.
5754 2005-05-06 Frank Warmerdam <warmerdam@pobox.com>
5756 * libtiff/tif_dirread.c: Applied similar change to
5757 TIFFFetchPerSampleLongs and TIFFFetchPerSampleAnys.
5759 http://bugzilla.remotesensing.org/show_bug.cgi?id=843
5761 * libtiff/tif_jpeg.c: added LIB_JPEG_MK1 support in JPEGDecodeRaw().
5763 2005-05-06 Andrey Kiselev <dron@ak4719.spb.edu>
5764 * tools/tiff2pdfr.c, man/tiff2pdf.1: Calculate the tile width properly;
5765 added new option '-b' to use interpolation in output PDF files (Bruno
5768 2005-05-05 Frank Warmerdam <warmerdam@pobox.com>
5770 * libtiff/tif_dirread.c: Ensure that broken files with too many
5771 values in PerSampleShorts work ok instead of crashing.
5773 http://bugzilla.remotesensing.org/show_bug.cgi?id=843
5775 2005-04-27 Andrey Kiselev <dron@ak4719.spb.edu>
5777 * tools/tiffdither.c: Copy the PhotometricInterpretation tag from the
5780 2005-04-15 Andrey Kiselev <dron@ak4719.spb.edu>
5782 * libtiff/tif_predict.c: Added ability to encode floating point
5783 predictor, as per TIFF Technical Note 3.
5785 2005-04-14 Andrey Kiselev <dron@ak4719.spb.edu>
5787 * libtiff/{tif_predict.h, tif_predict.c}: Added ability to decode
5788 floating point predictor, as per TIFF Technical Note 3.
5790 2005-04-13 Andrey Kiselev <dron@ak4719.spb.edu>
5792 * libtiff/{tiffio.h, tiffiop.h, tif_dir.c, tif_read.c, tif_swab.c}:
5793 Added _TIFFSwab24BitData() and TIFFSwabArrayOfLong() functions used to
5794 swap 24-bit floating point values.
5796 * libtiff/tiff.h: Added predictor constants.
5798 2005-04-08 Andrey Kiselev <dron@ak4719.spb.edu>
5800 * libtiff/{tiffiop.h, tif_dir.c}: Use uint32 type for appropriate
5801 values in _TIFFVSetField() function. Inspired by the bug
5803 http://bugzilla.remotesensing.org/show_bug.cgi?id=816
5805 * man/TIFFSetField.3tiff: Fixed definition of the TIFFTAG_INKNAMES tag
5808 http://bugzilla.remotesensing.org/show_bug.cgi?id=816
5810 2005-03-30 Andrey Kiselev <dron@ak4719.spb.edu>
5812 * libtiff/tif_open.c: Do not read header in case the output file
5813 should be truncated (Ron).
5815 * libtiff/{tif_dirinfo.c, tif_config.h.vc}: Use lfind() instead
5816 of bsearch() in _TIFFFindFieldInfoByName() function (Ron).
5818 * libtiff/{tiff.h, tif_dirinfo.c}: Fixes in EXIF tag ordering (Ron).
5820 2005-03-22 Andrey Kiselev <dron@ak4719.spb.edu>
5822 * configure.ac, libtiff/Makefile.am: Use libtool machinery to pass
5825 2005-03-21 Andrey Kiselev <dron@ak4719.spb.edu>
5827 * libtiff/{tif_dir.c, tif_print.c}: Handle all data types in custom
5830 2005-03-18 Andrey Kiselev <dron@ak4719.spb.edu>
5832 * libtiff/dirinfo.c: Added DNG tags.
5834 * libtiff/{tif_dir.c, tif_print.c}: More improvements in custom tag
5837 * libtiff/tiff.h: More comments; added missed DNG tag (LensInfo);
5838 added DNG 1.1.0.0 tags.
5840 * tools/tif2pdf.c: Fixed problem with alpha channel handling as per
5843 http://bugzilla.remotesensing.org/show_bug.cgi?id=794
5845 * man/TIFFGetField.3tiff: Add a note about autoregistered tags.
5847 2005-03-17 Andrey Kiselev <dron@ak4719.spb.edu>
5849 * nmake.opt: Build with Win32 CRT library by default.
5851 * tools/tiff2ps.c: Fixed typo in page size handling code.
5853 * libtiff/{tif_dir.c, tif_print.c}: Support for custom tags, passed
5856 * libtiff/{tiff.h, tif_dirinfo.c, tiffiop.h}: Added EXIF related tags.
5858 2005-03-15 Andrey Kiselev <dron@ak4719.spb.edu>
5860 * libtiff 3.7.2 released.
5862 2005-03-09 Andrey Kiselev <dron@ak4719.spb.edu>
5864 * tools/tiffcmp.c: Added ability to compare the 32-bit integer and
5865 floating point data; complain on unsupported bit depths.
5867 2005-03-05 Andrey Kiselev <dron@ak4719.spb.edu>
5869 * tif_stream.cxx: Use ios namespace instead of ios_base to support
5872 * libtiff/{tiff.h, tif_fax3.tif, tif_jpeg.c}: Applied correct patch from
5873 Lee Howard for HylaFax DCS tag
5874 (see http://bugzilla.remotesensing.org/show_bug.cgi?id=771)
5876 2005-03-04 Andrey Kiselev <dron@ak4719.spb.edu>
5878 * configure, configure.ac: Use -rpath option instead of -R as per bug
5880 http://bugzilla.remotesensing.org/show_bug.cgi?id=732
5882 * libtiff/{tiff.h, tif_fax3.tif, tif_jpeg.c}: Applied patch from Lee
5883 Howard to support a new tag TIFFTAG_FAXDCS (34911) used in HylaFax
5884 software. As per bug
5886 http://bugzilla.remotesensing.org/show_bug.cgi?id=771
5888 * nmake.opt, html/build.html: Add more comments, change the config
5889 file organization a bit as per bug
5891 http://bugzilla.remotesensing.org/show_bug.cgi?id=764
5893 * tools/tiffcmp.c: Use properly sized buffer in short arrays comparison
5896 http://bugzilla.remotesensing.org/show_bug.cgi?id=785
5898 2005-03-03 Andrey Kiselev <dron@ak4719.spb.edu>
5900 * libtiff/tif_dirread.c: More logic to guess missed strip size as per
5901 bug http://bugzilla.remotesensing.org/show_bug.cgi?id=705
5903 * tools/fax2ps.c: Replace insecure mktemp() function with the
5904 tmpfile() as per bug
5906 http://bugzilla.remotesensing.org/show_bug.cgi?id=786
5908 2005-02-04 Andrey Kiselev <dron@ak4719.spb.edu>
5910 * libtiff/tiff.h: Changed the int8 definition to be always signed char
5913 http://bugzilla.remotesensing.org/show_bug.cgi?id=727
5915 * libtiff/tiffio.h: Move TIFFOpenW() function into the extern "C"{}
5918 http://bugzilla.remotesensing.org/show_bug.cgi?id=763
5920 2005-02-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
5922 * tools/tiffgt.c: Fix problem on big-endian CPUs so that images
5923 display more correctly. Images display brighter than they should
5924 on a Sun workstation.
5926 2005-02-03 Andrey Kiselev <dron@ak4719.spb.edu>
5928 * libtiff/tif_dirread.c: Estimate strip size in case of wrong or
5929 suspicious values in the tags. As per bugs
5931 http://bugzilla.remotesensing.org/show_bug.cgi?id=705
5935 http://bugzilla.remotesensing.org/show_bug.cgi?id=320
5937 * tools/tiff2ps.c: Fixed problem with page sizes as per bug
5939 http://bugzilla.remotesensing.org/show_bug.cgi?id=742
5941 2005-01-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
5943 * libtiff/tiff.h (TIFFTAG_TILEWIDTH): Corrected description.
5944 (TIFFTAG_TILELENGTH): Corrected description.
5946 2005-01-30 Andrey Kiselev <dron@ak4719.spb.edu>
5948 * configure.ac: Fixes for --with-docdir option as per bug
5950 http://bugzilla.remotesensing.org/show_bug.cgi?id=759
5952 * libtiff/tif_open.c: Remove unnesessary TIFFSeekFile() call as per
5955 http://bugzilla.remotesensing.org/show_bug.cgi?id=756
5957 * libtiff/tif_stream.cxx: Fixes for C++ stream interface from
5958 Michael Rinne and Edward Lam.
5960 2005-01-15 Andrey Kiselev <dron@ak4719.spb.edu>
5962 * configure.ac: Make the documentation directory location configurable
5963 via the --with-docdir option (as suggested by Jeremy C. Reed).
5965 * libtiff/tif_color.c: Use double as the second argument of pow()
5966 function in TIFFCIELabToRGBInit(). As per bug
5968 http://bugzilla.remotesensing.org/show_bug.cgi?id=741
5970 * libtiff/tif_pixarlog.c: Avoid warnings when converting float to
5973 http://bugzilla.remotesensing.org/show_bug.cgi?id=740
5975 * libtiff/tif_getimage.c: Always fill the error message buffer in
5976 TIFFRGBAImageBegin() as per bug
5978 http://bugzilla.remotesensing.org/show_bug.cgi?id=739
5980 2005-01-12 Andrey Kiselev <dron@ak4719.spb.edu>
5982 * libtiff/tif_jpeg.c: Added ability to read/write the fax specific
5983 TIFFTAG_FAXRECVPARAMS, TIFFTAG_FAXSUBADDRESS and TIFFTAG_FAXRECVTIME
5986 http://bugzilla.remotesensing.org/show_bug.cgi?id=736
5988 * libtiff/tif_win32.c: Fixed message formatting in functions
5989 Win32WarningHandler() and Win32ErrorHandler() as per bug
5991 http://bugzilla.remotesensing.org/show_bug.cgi?id=735
5993 * tools/tiff2ps.c: Interpret the -w and -h options independently. As
5996 http://bugzilla.remotesensing.org/show_bug.cgi?id=689
5998 2005-01-11 Andrey Kiselev <dron@ak4719.spb.edu>
6000 * libtiff/tiffio.h: Move the color conversion routines in the 'extern
6001 "C"' section as per bug
6003 http://bugzilla.remotesensing.org/show_bug.cgi?id=727
6005 * libtiff/tiff.h: Restore back the workaround for AIX Visual Age C
6006 compiler to avoid double definition of BSD types as per bug
6008 http://bugzilla.remotesensing.org/show_bug.cgi?id=39
6010 * libtiff/Makefile.am: Place the C++ stream API in the separate
6011 library called libtiffxx to avoid unneeded dependencies. Probably
6012 there will be more C++ API in the future. As per bugs
6014 http://bugzilla.remotesensing.org/show_bug.cgi?id=733
6018 http://bugzilla.remotesensing.org/show_bug.cgi?id=730
6020 2005-01-05 Andrey Kiselev <dron@ak4719.spb.edu>
6022 * tools/tiffdump.c: Fixed problem when read broken TIFFs with the
6023 wrong tag counts (Dmitry V. Levin, Martin Pitt).
6025 * configure.ac: Replace --disable-c++ with the --disable-cxx option as
6026 per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=730
6028 2004-12-25 Andrey Kiselev <dron@ak4719.spb.edu>
6030 * libtiff/tif_getimage.c: More fixes for multiple-alpha-channelled
6031 RGB-images as per bug
6033 http://bugzilla.remotesensing.org/show_bug.cgi?id=713
6036 * tools/tiffset.c: Convert character option to integer value as per
6037 bug http://bugzilla.remotesensing.org/show_bug.cgi?id=725
6039 2004-12-20 Andrey Kiselev <dron@ak4719.spb.edu>
6041 * libtiff 3.7.1 released.
6043 * html/tiffset.1.html: Add missed manual page as per bug
6045 http://bugzilla.remotesensing.org/show_bug.cgi?id=678
6047 * libtiff/tiff.h: Revert back libtiff data type definitions as per
6048 bug http://bugzilla.remotesensing.org/show_bug.cgi?id=687
6050 2004-12-19 Andrey Kiselev <dron@ak4719.spb.edu>
6052 * libtiff/tif_dirread.c: Do not forget about TIFF_VARIABLE2 when
6053 checking for tag count in TIFFReadDirectory() function. As per bug
6055 http://bugzilla.remotesensing.org/show_bug.cgi?id=713
6057 * libtiff/{tif_dirread.c, tif_fax3.c}: More argument checking in
6058 CheckMallock() function.
6060 * libtiff/tif_getimage.c: Support for multiple-alpha-channelled
6061 RGB-images as per bug
6063 http://bugzilla.remotesensing.org/show_bug.cgi?id=718
6065 2004-12-15 Frank Warmerdam <warmerdam@pobox.com>
6067 * libtiff/tif_getimage.c: #define A1 bracketing for clean build on
6070 2004-12-11 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
6072 * autogen.sh: aclocal and autoheader should be executed after
6073 libtoolize. Also add '-I .' to aclocal invocation to check
6074 current directory for macros.
6076 2004-12-10 Andrey Kiselev <dron@ak4719.spb.edu>
6078 * libtiff/tif_dirwrite.c: Always write TIFFTAG_SUBIFD using LONG type
6081 http://bugzilla.remotesensing.org/show_bug.cgi?id=703
6085 http://bugzilla.remotesensing.org/show_bug.cgi?id=704
6087 2004-12-04 Andrey Kiselev <dron@ak4719.spb.edu>
6089 * nmake.opt: Link with the user32.lib in windowed mode. As per bug
6091 http://bugzilla.remotesensing.org/show_bug.cgi?id=697
6093 * libtiff/tif_win32.c: Use char* strings instead of TCHAR in windowed
6096 http://bugzilla.remotesensing.org/show_bug.cgi?id=697
6098 * libtiff/tif_config.in.vc: Removed unneded definitions for
6099 read/open/close/lseek functions to fix the
6101 http://bugzilla.remotesensing.org/show_bug.cgi?id=680
6103 2004-12-03 Andrey Kiselev <dron@ak4719.spb.edu>
6105 * libtiff/{tif_dir.c, tif_dirread.c}: Remove TIFFReassignTagToIgnore()
6106 call from the TIFFReadDirectory() function. TIFFReassignTagToIgnore
6107 must be removed in the future, as it was never used properly. As per
6110 http://bugzilla.remotesensing.org/show_bug.cgi?id=692
6112 2004-11-30 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
6114 * libtiff/tif_jpeg.c: Added a work-around in order to allow
6115 compilation with the heavily modified version of libjpeg delivered
6118 2004-11-29 Andrey Kiselev <dron@ak4719.spb.edu>
6120 * libtiff/tif_dir.c: Properly handle tags, which have the uint32
6123 http://bugzilla.remotesensing.org/show_bug.cgi?id=693
6125 * tools/fax2ps.c: Be able to extract the first page (#0). As per bug
6127 http://bugzilla.remotesensing.org/show_bug.cgi?id=690
6129 2004-11-28 Andrey Kiselev <dron@ak4719.spb.edu>
6131 * libtiff/tif_unix.c: Make UNIX module compilable (and usable)
6134 * nmake.opt: Add missed DLLNAME variable.
6136 2004-11-26 Frank Warmerdam <warmerdam@pobox.com>
6138 * libtiff/makefile.vc: make it easier to rename the libtiff DLL.
6140 2004-11-24 Andrey Kiselev <dron@ak4719.spb.edu>
6142 * man/libtiff.3tiff: Improvements in the "LIST OF ROUTINES" table as
6145 http://bugzilla.remotesensing.org/show_bug.cgi?id=545
6147 * man/tiffset.1: Added manual page for tiffset tool written by Jay
6148 Berkenbilt. As per bug
6150 http://bugzilla.remotesensing.org/show_bug.cgi?id=678
6152 2004-11-23 Frank Warmerdam <warmerdam@pobox.com>
6154 * libtiff/tif_error.c: fixed TIFFerror call to be TIFFError.
6156 2004-11-21 Frank Warmerdam <warmerdam@pobox.com>
6158 * html/document.html: Updated Adobe web links as per email from Joris.
6160 2004-11-21 Andrey Kiselev <dron@ak4719.spb.edu>
6162 * libtiff/{tiffio.hxx, tiffio.h}: C++ stream interface moved to new
6163 file tiffio.hxx. We don't have any C++ in tiffio.h, those who want to
6164 use C++ streams should #include <tiffio.hxx>.
6166 2004-11-13 Andrey Kiselev <dron@ak4719.spb.edu>
6168 * libtiff/tiff.h: Added Adobe DNG tags.
6170 * libtiff/tif_win32.c: Typo fixed.
6172 * libtiff/{tif_stream.cxx, tiffio.h}: C++ stream interface updated to
6173 be compliant with the latest standard. Appropriate additions in
6174 makefiles now completed.
6176 2004-11-11 Andrey Kiselev <dron@ak4719.spb.edu>
6178 * tools/tiffset.c, libtiff/tif_dirinfo.c: Properly handle the
6179 different tag types. As per bug
6181 http://bugzilla.remotesensing.org/show_bug.cgi?id=600
6183 2004-11-10 Andrey Kiselev <dron@ak4719.spb.edu>
6185 * libtiff/tif_aux.c: Set the appropriate ReferenceBlackWhite array for
6186 YCbCr image which lacks that tag (noted by Hans Petter Selasky).
6188 2004-11-09 Andrey Kiselev <dron@ak4719.spb.edu>
6190 * libtiff/tif_color.c: Division by zero fixed (Hans Petter Selasky).
6192 2004-11-07 Andrey Kiselev <dron@ak4719.spb.edu>
6194 * libtiff/{tif_stream.cxx, tiffio.h}: Added C++ stream interface
6195 contributed by Edward Lam (see
6196 http://bugzilla.remotesensing.org/show_bug.cgi?id=654 for details).
6197 Though no changes in any makefiles yet.
6199 2004-11-05 Frank Warmerdam <warmerdam@pobox.com>
6201 * libtiff/tif_open.c: Removed close() in TIFFClientOpen() if file
6202 is bad. This is the callers responsibility.
6203 http://bugzilla.remotesensing.org/show_bug.cgi?id=651
6205 2004-11-05 Andrey Kiselev <dron@ak4719.spb.edu>
6207 * libtiff/{tiffio.h, tif_win32.c, libtiff.def}: Added TIFFOpenW()
6208 function to work with the double byte strings (used to represent
6209 filenames in some locales). As per bug
6211 http://bugzilla.remotesensing.org/show_bug.cgi?id=625
6213 * libtiff/tif_dirread.c: Fixed problem when fetching BitsPerSample and
6214 Compression tags of type LONG from broken TIFFS as per bug
6216 http://bugzilla.remotesensing.org/show_bug.cgi?id=662
6218 * libtiff/tif_dirinfo.c: Fixed definition for TIFFTAG_RICHTIFFIPTC,
6219 the writecount should have uint32 type. As per bug
6221 http://bugzilla.remotesensing.org/show_bug.cgi?id=662
6223 * libtiff/tif_write.c: Fixed wrong if() statement in
6224 TIFFAppendToStrip() function as per bug
6226 http://bugzilla.remotesensing.org/show_bug.cgi?id=660
6228 2004-11-04 Andrey Kiselev <dron@ak4719.spb.edu>
6230 * libtiff/tif_dirinfo.c: Change definition for TIFFTAG_EXTRASAMPLES
6231 field. The caller should supply a count when setting this field. As
6234 http://bugzilla.remotesensing.org/show_bug.cgi?id=648
6236 * libtiff/{tif_jpeg.c, tif_ojpeg.c}: TIFFTAG_JPEGTABLES should have
6237 uint32 count. Use this type everywhere.
6239 2004-11-03 Frank Warmerdam <warmerdam@pobox.com>
6241 * libtiff/tif_next.c: avoid use of u_long and u_char types. Bug 653.
6243 2004-11-02 Frank Warmerdam <warmerdam@pobox.com>
6245 * tools/tiff2rgba.c: removed extra newlines in usage message.
6247 2004-10-30 Andrey Kiselev <dron@ak4719.spb.edu>
6249 * libtiff/tif_dirwrite.c: Improvements in tag writing code.
6251 * tools/tiff2ps.c: Fixed wrong variable data type when read Position
6252 tags (Tristan Hill).
6254 2004-10-30 Frank Warmerdam <warmerdam@pobox.com>
6256 * libtiff/tiffiop.h: added fallback definition of assert() if we
6257 don't have assert.h.
6259 2004-10-29 Andrey Kiselev <dron@ak4719.spb.edu>
6261 * libtiff/tif_fax3.c: Fixed case with the wrong decode routines
6262 choosing when the incorrect Group4Options tag set. As per bug
6264 http://bugzilla.remotesensing.org/show_bug.cgi?id=323
6266 * libtiff/tif_dirwrite.c: Fixed problem with passing count variable of
6267 wrong type when writing the TIFF_BYTE/TIFF_SBYTE tags in
6268 TIFFWriteNormalTag().
6270 2004-10-28 Andrey Kiselev <dron@ak4719.spb.edu>
6272 * tools/tiff2ps.c: Fixed wrong variable data type when read Resolution
6275 * tools/{bmp2tiff.c, raw2tiff.c}: Get rid of stream I/O functions.
6277 2004-10-28 Frank Warmerdam <warmerdam@pobox.com>
6279 * tools/tiff2pdf.c: added casts to avoid warnings.
6281 * libtiff/libtiff.def: Added several more entry points required
6282 to link fax2tiff.c against the DLL on windows.
6284 2004-10-27 Andrey Kiselev <dron@ak4719.spb.edu>
6286 * configure, configure.ac: Added --enable-rpath option to embed linker
6287 paths into library binary.
6289 2004-10-26 Andrey Kiselev <dron@ak4719.spb.edu>
6291 * tools/tiffset.c: Check the malloc return value (Dmitry V. Levin).
6293 * libtiff/{tif_strip.c, tif_tile.c}: Zero division problem fixed
6294 (Vladimir Nadvornik, Dmitry V. Levin).
6296 2004-10-16 Andrey Kiselev <dron@ak4719.spb.edu>
6298 * libtiff 3.7.0 released.
6300 2004-10-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
6302 * libtiff/tif_jpeg.c: There seems to be no need to include stdio.h
6303 in this file so its inclusion is removed. Including stdio.h
6304 sometimes incurs an INT32 typedef conflict between MinGW's
6305 basetsd.h and libjpeg's jmorecfg.h.
6307 2004-10-15 Andrey Kiselev <dron@ak4719.spb.edu>
6309 * man/bmp2tiff.1: Added manual page for bmp2tiff utility.
6311 2004-10-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
6313 * tools/tiffcmp.c (leof): Renamed from 'eof' in order to avoid
6314 conflict noticed under MinGW.
6315 * ltmain.sh: Fix for MinGW compilation.
6317 2004-10-13 Frank Warmerdam <warmerdam@pobox.com>
6319 * man/tiffsplit.1: Fixed to indicate using aaa-zzz, not aa-zz.
6320 http://bugzilla.remotesensing.org/show_bug.cgi?id=635
6322 2004-10-12 Andrey Kiselev <dron@ak4719.spb.edu>
6324 * libtiff/{tif_dirread.c, tif_jpeg.c, tif_luv.c, tif_ojpeg.c,
6325 tif_pixarlog.c, tif_write.c}: Handle the zero strip/tile sizes
6326 properly (Dmitry V. Levin, Marcus Meissner).
6328 2004-10-11 Andrey Kiselev <dron@ak4719.spb.edu>
6330 * libtiff/tif_dirinfo.c: Type of the TIFFTAG_SUBIFD field changed
6333 2004-10-10 Andrey Kiselev <dron@ak4719.spb.edu>
6335 * tools/bmp2tif.c: Check the space allocation results.
6337 2004-10-09 Andrey Kiselev <dron@ak4719.spb.edu>
6339 * libtiff/tif_dir.c: Initialize td_tilewidth and td_tilelength fields
6340 of the TIFFDirectory structure with the 0 instead of -1 to avoid
6341 confusing integer overflows in TIFFTileRowSize() for striped images.
6343 * tools/tiff2pdf.c: Fixed TransferFunction tag handling reported
6344 by Ross A. Finlayson.
6346 * libtiff/tif_dir.c: Fixed custom tags handling as per bug
6348 http://bugzilla.remotesensing.org/show_bug.cgi?id=629
6350 2004-10-08 Frank Warmerdam <warmerdam@pobox.com>
6352 * libtiff/tif_dirinfo.c: Fix bug with tif_foundfield and reallocation
6355 http://bugzilla.remotesensing.org/show_bug.cgi?id=630
6357 2004-10-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
6359 * contrib/iptcutil/README: Added the missing README which goes
6360 along with iptcutil.
6362 2004-10-03 Andrey Kiselev <dron@ak4719.spb.edu>
6364 * libtiff/tif_compress.c: Improved error reporting in
6365 TIFFGetConfiguredCODECs() (Dmitry V. Levin).
6367 2004-10-02 Andrey Kiselev <dron@ak4719.spb.edu>
6369 * libtiff 3.7.0beta2 released.
6371 * libtiff/{tif_aux.c, tif_compress.c, tif_dirinfo.c, tif_dirwrite.c,
6372 tif_extension.c, tif_fax3.c, tif_luv.c, tif_packbits.c,
6373 tif_pixarlog.c, tif_write.c}: Added checks for failed memory
6374 allocations and integer overflows (Dmitry V. Levin).
6376 * libtiff/tiff.h: Missed TIFF_BIGTIFF_VERSION constant added.
6378 2004-10-01 Frank Warmerdam <warmerdam@pobox.com>
6380 * libtiff/tif_open.c: added a more informative message if a BigTIFF
6383 2004-09-30 Frank Warmerdam <warmerdam@pobox.com>
6385 * libtiff/tif_dirinfo.c: changed type of XMLPacket (tag 700) to
6386 TIFFTAG_BYTE instead of TIFFTAG_UNDEFINED to comply with the info
6387 in the Adobe XMP Specification.
6389 2004-09-29 Andrey Kiselev <dron@ak4719.spb.edu>
6391 * libtiff/{tif_jpeg.c, tif_pixarlog.c}: Use _TIFFmemset() instead of
6394 * libtiff/{tif_dirread.c, tif_strip.c, tif_tile.c}: Applied patches
6395 from Dmitry V. Levin to fix possible integer overflow problems.
6397 2004-09-28 Andrey Kiselev <dron@ak4719.spb.edu>
6399 * libtiff/tif_getimage.c: Check for allocated buffers before clearing
6402 2004-09-26 Andrey Kiselev <dron@ak4719.spb.edu>
6404 * libtiff/{tif_dir.h, tif_dir.c, tif_dirread.c, tif_write.c}:
6405 Optimize checking for the strip bounds.
6407 * libtiff/{tif_dirread.c, tif_strip.c}: TIFFScanlineSize() and
6408 TIFFRasterScanlineSize() functions report zero in the case of integer
6409 overflow now. Properly handle this case in TIFFReadDirectory()
6410 (patches from Dmitry V. Levin).
6412 2004-09-25 Andrey Kiselev <dron@ak4719.spb.edu>
6414 * libtiff/{tif_dirinfo.c, tif_strip.c, tif_tile.c}: Use TIFFhowmany8()
6415 macro where appropriate.
6417 * tools/tiff2bw.c: Write ImageWidth/Height tags to output file, as
6418 noted by Gennady Khokhorin.
6420 * libtiff/tif_dirread.c: Always check the return values, returned
6421 by the _TIFFmalloc() (Dmitry V. Levin).
6423 * libtiff/tif_dir.c: Fixed possible integer overflow _TIFFset*Array()
6424 functions (Dmitry V. Levin).
6426 * libtiff/{tif_dirread.c, tif_dir.c, tif_write.c}:
6427 Potential memory leak fixed in TIFFReadDirectory(), _TIFFVSetField(),
6428 TIFFGrowStrips() (found by Dmitry V. Levin).
6430 2004-09-24 Andrey Kiselev <dron@ak4719.spb.edu>
6432 * libtiff/{tiffio.h, tif_compress.c}: Added TIFFGetConfiguredCODECs()
6433 to get the list of configured codecs.
6435 * libtiff/{tiffiop.h, tif_dirread.c}: More overflow fixes from
6438 2004-09-23 Andrey Kiselev <dron@ak4719.spb.edu>
6440 * libtiff/tif_dirread.c: Applied patch from Dmitry V. Levin to fix
6441 possible integer overflow in CheckMalloc() function.
6443 2004-09-22 Andrey Kiselev <dron@ak4719.spb.edu>
6445 * libtiff/{tiffiop.h, tif_strip.c}: Use TIFFhowmany8() macro instead
6446 of plain TIFFhowmany() where appropriate.
6448 2004-09-21 Andrey Kiselev <dron@ak4719.spb.edu>
6450 * libtiff/tif_getimage.c: Initialize arrays after space allocation.
6452 2004-09-19 Andrey Kiselev <dron@ak4719.spb.edu>
6454 * libtiff 3.7.0beta released.
6456 * libtiff/{tif_luv.c, tif_next.c, tif_thunder.c}: Several buffer
6457 overruns fixed, as noted by Chris Evans.
6459 2004-09-14 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
6461 * commit: Added a script to make it more convenient to commit
6462 updates. The CVS commit message is extracted from this ChangeLog
6465 2004-09-14 Andrey Kiselev <dron@ak4719.spb.edu>
6467 * configure.ac, configure, aclocal.m4, libtiff/{mkspans.c, tif_fax3.c,
6468 tif_getimage.c, tif_luv.c, tif_lzw.c, tif_ojpeg.c, tif_packbits.c,
6469 tif_predict.c, tif_read.c, tif_swab.c, tif_thunder.c, tif_write.c,
6470 tif_dir.c, tif_dirread.c, tif_dirwrite.c, tif_jpeg.c, tif_dirinfo.c,
6471 tif_vms.c, tif_print.c, tif_strip.c, tif_tile.c, tif_dir.h,
6472 tif_config.h.in, tiffiop.h}:
6473 Get rid of BSD data types (u_char, u_short, u_int, u_long).
6475 2004-09-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
6477 * libtiff/tiff.h: Fix column tagging. Reference current Adobe XMP
6478 specification. Reference libtiff bug tracking system to submit
6479 private tag additions.
6481 2004-09-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
6483 * tools/tiffgt.c: Include "tif_config.h".
6485 * configure.ac: Use AM_PROG_CC_C_O since it is now needed to build
6486 tiffgt. This results in the 'compile' script being added to the
6489 * tools/Makefile.am (tiffgt_CFLAGS): Add extra build options
6490 required to find OpenGL headers necessary to build tiffgt. Also
6491 ensure that the libtiff that we built is used rather than some other
6492 libtiff installed on the system.
6494 2004-09-12 Andrey Kiselev <dron@ak4719.spb.edu>
6496 * configure.ac, acinclude.m4, aclocal.m4: New macros to detect GLUT
6499 2004-09-11 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
6501 * configure.ac: Pass library configuration defines via
6502 tif_config.h rather than extending CPPFLAGS. Configure a
6503 libtiff/tiffconf.h in order to satisfy application requirements
6504 (not used by library build). Do not define _POSIX_C_SOURCE=2 since
6505 this causes failure to build on systems which properly respect
6508 * libtiff/tiffconf.h.in: New file to act as the template for the
6509 configured tiffconf.h
6511 * libtiff/files.lst (HDRS): Install the configured tiffconf.h.
6513 2004-09-10 Frank Warmerdam <warmerdam@pobox.com>
6515 * html/internals.html: Split off a discussion of adding new tags
6516 into addingtags.html.
6518 2004-09-10 Andrey Kiselev <dron@ak4719.spb.edu>
6520 * test/{ascii_tag.c, long_tag.c}: Preliminary test suite added.
6522 * tools/tiff2pdf.c: Fixed reading TransferFunction tag as per bug
6524 http://bugzilla.remotesensing.org/show_bug.cgi?id=590
6526 * libtiff/tif_print.c: Fixes in InkNames and NumberOfInks reporting.
6528 * libtiff/tif_dirread.c: Don't reject to read tags of the
6529 SamplesPerPixel size when the tag count is greater than number of
6532 http://bugzilla.remotesensing.org/show_bug.cgi?id=576
6534 * libtiff/tiff.h: Use _TIFF_DATA_TYPEDEFS_ guardian to switch off
6535 defining int8/uint8/... etc. types. As per bug
6537 http://bugzilla.remotesensing.org/show_bug.cgi?id=607
6539 2004-09-09 Frank Warmerdam <warmerdam@pobox.com>
6541 * tools/tiff2ps.c, tools/tiffmedian.c: fiddle with include files
6542 to avoid compile warnings about getopt() and a few other things.
6544 2004-09-02 Andrey Kiselev <dron@ak4719.spb.edu>
6546 * libtiff/tif_dirread.c: Use memcpy() function instead of pointer
6547 assigning magic in TIFFFetchFloat().
6549 2004-09-01 Andrey Kiselev <dron@ak4719.spb.edu>
6551 * libtiff/{tiffio.h, tif_open.c}: Applied patches from Joris Van Damme
6552 to avoid requirement for tiffiop.h inclusion in some applications. See
6555 http://www.asmail.be/msg0054799560.html
6559 * tools/fax2tiff.c: Use the new functions in the code.
6561 2004-08-25 Andrey Kiselev <dron@ak4719.spb.edu>
6563 * tools/tiff2pdf.c: Initialize arrays properly.
6565 * tools/tiff2ps.c: Avoid zero division in setupPageState() function;
6566 properly initialize array in PSDataBW().
6568 2004-08-24 Andrey Kiselev <dron@ak4719.spb.edu>
6570 * tools/tiff2pdf.c: More fixes for bug
6572 http://bugzilla.remotesensing.org/show_bug.cgi?id=590
6574 from Ross Finlayson.
6576 2004-08-23 Andrey Kiselev <dron@ak4719.spb.edu>
6578 * tools/tiff2ps.c: Fixed problem with uninitialized values.
6580 * libtiff/tif_dir.c: Initialize tif_foundfield data member in the
6581 TIFFDefaultDirectory() (in addition to 2004-08-19 fix).
6583 * tools/tiff2pdf.c: Fixed a bunch of problems as per bug
6585 http://bugzilla.remotesensing.org/show_bug.cgi?id=590
6587 2004-08-20 Andrey Kiselev <dron@ak4719.spb.edu>
6589 * tools/tiff2pdf.c: Applied patch from Ross Finlayson that checks
6590 that the input file has compression, photometric interpretation,
6591 etcetra, tags or if not than a more descriptive error is returned.
6593 * libtiff/tif_dirread.c: Fixed problem in TIFFReadDirectory() in the
6594 code, responsible for tag data type checking.
6596 2004-08-19 Andrey Kiselev <dron@ak4719.spb.edu>
6598 * libtiff/{tiffiop.h, tif_dirinfo.c}: Fixed problem with the static
6601 http://bugzilla.remotesensing.org/show_bug.cgi?id=593
6603 2004-08-16 Andrey Kiselev <dron@ak4719.spb.edu>
6605 * tools/ras2tiff.c: Fixed issue with missed big-endian checks as per
6606 bug http://bugzilla.remotesensing.org/show_bug.cgi?id=586
6608 2004-08-01 Andrey Kiselev <dron@ak4719.spb.edu>
6610 * libtiff/{tif_config.h.in, tif_config.h.vc}: config.h.in and
6611 config.h.vc files renamed in the tif_config.h.in and tif_config.h.vc.
6613 2004-07-24 Andrey Kiselev <dron@ak4719.spb.edu>
6615 * libtiff/tif_lzw.c: LZW compression code is merged back from the
6616 separate package. All libtiff tools are updated to not advertise an
6617 abcence of LZW support.
6619 2004-07-12 Andrey Kiselev <dron@ak4719.spb.edu>
6621 * libtiff/tiffio.h: Revert thandle_t back to void* type.
6623 2004-07-11 Andrey Kiselev <dron@ak4719.spb.edu>
6625 * libtiff/{tif_read.c, tif_tile.c, tif_strip.c}: Fixes in error
6626 messages, as suggested by Bernd Herd.
6628 2004-07-03 Andrey Kiselev <dron@ak4719.spb.edu>
6630 * libtiff/tif_dir.c: Call TIFFError() instead of producing warnings
6631 when setting custom tags by value. Reported by Eric Fieleke.
6633 2004-06-14 Andrey Kiselev <dron@ak4719.spb.edu>
6635 * tools/bmp2tiff.c: Add missed RawsPerStrip setting.
6637 2004-06-08 Andrey Kiselev <dron@ak4719.spb.edu>
6639 * tools/bmp2tiff.c: Added new utility to convert Windows BMP files
6642 2004-06-07 Andrey Kiselev <dron@ak4719.spb.edu>
6644 * libtiff 3.7.0alpha released.
6646 2004-06-06 Andrey Kiselev <dron@ak4719.spb.edu>
6648 * libtiff/{tiff.h, tif_dirwrite.c, tif_fax3.c, tif_packbits.c,}: Get rid
6649 of ugly 64-bit hacks, replace them with the clever (autoconf based )
6652 * libtiff/tiffio.h: Define thandle_t as int, not void* (may cause
6653 problems in 64-bit environment).
6655 2004-06-05 Andrey Kiselev <dron@ak4719.spb.edu>
6657 * tools/tiffset.c: tiffset now can set any libtiff supported tags.
6658 Tags can be supplied by the mnemonic name or number.
6660 * libtiff/{tiffio.h, tif_dir.h, tif_dirinfo.c,}: Added two new
6661 functions TIFFFindFieldInfoByName() and TIFFFieldWithName().
6663 2004-05-27 Andrey Kiselev <dron@ak4719.spb.edu>
6665 * libtiff/tif_ojpeg.c: Fixed problem with duplicated SOI and SOF
6668 http://bugzilla.remotesensing.org/show_bug.cgi?id=581
6670 2004-05-24 Andrey Kiselev <dron@ak4719.spb.edu>
6672 * tools/tiffsplit.c: Don't forget to copy Photometric
6675 2004-05-20 Andrey Kiselev <dron@ak4719.spb.edu>
6677 * libtiff/{tif_open.c, tiffio.h}: New function added:
6678 TIFFIsBigEndian(). Function returns nonzero if given was file written
6679 in big-endian order.
6681 * tools/tiffsplit.c: Fixed problem with unproperly written multibyte
6682 files. Now output files will be written using the same byte order
6683 flag as in the input image. See
6685 http://bugzilla.remotesensing.org/show_bug.cgi?id=574
6689 2004-05-19 Frank Warmerdam <warmerdam@pobox.com>
6691 * libtiff/tif_print.c: added (untested) support for printing
6692 SSHORT, SLONG and SRATIONAL fields.
6694 * tools/tiffcp.c: close output file on normal exit.
6696 2004-05-17 Andrey Kiselev <dron@ak4719.spb.edu>
6698 * libtiff/tif_fax3.c: Avoid reading CCITT compression options
6699 if compression type mismatches. See
6701 http://bugzilla.remotesensing.org/show_bug.cgi?id=565
6703 2004-04-30 Andrey Kiselev <dron@ak4719.spb.edu>
6705 * libtiff/tif_strip.c: Never return 0 from the
6706 TIFFNumberOfStrips().
6708 2004-04-29 Andrey Kiselev <dron@ak4719.spb.edu>
6710 * libtiff/tif_dirread.c: Workaround for broken TIFF writers which
6711 store single SampleFormat value for multisampled images. See
6713 http://bugzilla.remotesensing.org/show_bug.cgi?id=562
6715 2004-04-25 Andrey Kiselev <dron@ak4719.spb.edu>
6717 * configure.ac, libtiff/{tiff.h, config.h.in}: Added tests for int8,
6718 int16 and int32 types to avoid complains on some compilers. Details at
6720 http://bugzilla.remotesensing.org/show_bug.cgi?id=39
6722 2004-04-20 Andrey Kiselev <dron@ak4719.spb.edu>
6724 * tools/tiff2pdf.c: Fixed problem with unaligned access as per bug
6726 http://bugzilla.remotesensing.org/show_bug.cgi?id=555
6728 2004-04-14 Andrey Kiselev <dron@ak4719.spb.edu>
6730 * libtiff/tif_write.c: Allow in-place updating of the compressed
6731 images (don't work properly with all codecs). For details see GDAL bug
6733 http://bugzilla.remotesensing.org/show_bug.cgi?id=534
6735 2004-04-06 Andrey Kiselev <dron@ak4719.spb.edu>
6737 * libtiff/tif_jpeg.c: Workaround for wrong sampling factors used
6738 in the Intergarph JPEG compressed TIFF images as per bug:
6740 http://bugzilla.remotesensing.org/show_bug.cgi?id=532
6742 2004-04-04 Frank Warmerdam <warmerdam@pobox.com>
6744 * libtiff/tif_open.c: close clientdata if TIFFClientOpen() fails
6747 2004-03-26 Andrey Kiselev <dron@ak4719.spb.edu>
6749 * tools/tiffcp.c: Properly set Photometric Interpretation in case of
6750 JPEG compression of grayscale images.
6752 * tools/tiffcp.c: Don't emit warnings when Orientation tag does not
6753 present in the input image.
6755 2004-03-19 Andrey Kiselev <dron@ak4719.spb.edu>
6757 * {many}: The first attempt to switch to autotools.
6759 2004-03-03 Andrey Kiselev <dron@ak4719.spb.edu>
6761 * libtiff/tif_open.c: Use dummy mmap/munmap functions in
6762 TIFFClientOpen() when the appropriate client functions was not
6765 2004-03-02 Frank Warmerdam <warmerdam@pobox.com>
6767 * tools/ycbcr.c: fixed main() declaration as per:
6768 http://bugzilla.remotesensing.org/show_bug.cgi?id=513
6770 2004-02-26 Andrey Kiselev <dron@ak4719.spb.edu>
6772 * tools/tiffsplit.c: Copy JPEGTables tag contents for JPEG compressed
6773 images. Reported by Artem Mirolubov.
6775 * libtiff/tif_dirread.c: Fixed problem with handling TIFF_UNDEFINED
6776 tag type in TIFFFetchNormalTag() as per bug
6778 http://bugzilla.remotesensing.org/show_bug.cgi?id=508
6780 2004-02-17 Frank Warmerdam <warmerdam@pobox.com>
6782 * libtiff/tif_codec.c: Fixed typo in TIFFInitPackBits name as per:
6783 http://bugzilla.remotesensing.org/show_bug.cgi?id=494
6785 2004-02-05 Andrey Kiselev <dron@ak4719.spb.edu>
6787 * libtiff/tif_fax3.c: Fixed problem with CCITT encoding modes as per
6790 http://bugzilla.remotesensing.org/show_bug.cgi?id=483
6792 But we need more work on fax codec to support update mode.
6794 2004-01-30 Frank Warmerdam <warmerdam@pobox.com>
6796 * libtiff/libtiff.def: Added TIFFCurrentDirOffset, TIFFWriteCheck,
6797 TIFFRGBAImageOK, and TIFFNumberOfDirectories as suggested by
6800 2004-01-29 Andrey Kiselev <dron@ak4719.spb.edu>
6802 * libtiff/tiff.h: Fixed tag definitions for TIFFTAG_YCLIPPATHUNITS
6803 and TIFFTAG_INDEXED as per bug
6805 http://bugzilla.remotesensing.org/show_bug.cgi?id=475
6807 * libtiff/{tif_win32.c, tif_unix.c}: Check whether the pointer is
6808 NULL before proceeding further as per bug
6810 http://bugzilla.remotesensing.org/show_bug.cgi?id=474
6812 Check results, returned by the TIFFFdOpen() before returning and close
6813 file if TIFFFdOpen() failed as per bug
6815 http://bugzilla.remotesensing.org/show_bug.cgi?id=468
6817 * libtiff/tif_open.c: More fixes for
6819 http://bugzilla.remotesensing.org/show_bug.cgi?id=468
6821 2004-01-28 Andrey Kiselev <dron@ak4719.spb.edu>
6823 * libtiff/{libtiff.def, tif_close.c, tiffio.h, tif_open.c}: Separate
6824 TIFFCleanup() from the TIFFClose() in order to fix the bug
6826 http://bugzilla.remotesensing.org/show_bug.cgi?id=468
6828 * tools/tiffcp.c: Fixed problem with wrong interpretation of the
6829 InkNames tag as per bug
6831 http://bugzilla.remotesensing.org/show_bug.cgi?id=466
6835 2004-01-21 Frank Warmerdam <warmerdam@pobox.com>
6837 * libtiff/tif_dirwrite.c: Fixed handling of writable ASCII tags that
6838 are field_passcount=TRUE properly. Arguably anonymous custom tags
6839 should be declared as passcount=FALSE, but I don't want to change
6840 that without a careful review.
6842 2004-01-20 Andrey Kiselev <dron@ak4719.spb.edu>
6844 * libtiff/tif_write.c: Fixed reporting size of the buffer in case of
6845 stripped image in TIFFWriteBufferSetup(). As per bug
6847 http://bugzilla.remotesensing.org/show_bug.cgi?id=460
6849 2004-01-11 Andrey Kiselev <dron@ak4719.spb.edu>
6851 * libtiff/tif_dir.c: Incomplete cleanup in TIFFFreeDirectory(),
6852 patch from Gerben Koopmans.
6854 * libtiff/tif_dirread.c: Check field_passcount value before setting
6855 the value of undefined type, patch from Gerben Koopmans.
6857 2004-01-02 Andrey Kiselev <dron@ak4719.spb.edu>
6859 * tools/tiffcp.c: Fixed problem with wrong Photometric setting for
6862 2003-12-31 Andrey Kiselev <dron@ak4719.spb.edu>
6864 * libtiff/tif_win32.c: Fixed problem with _TIFFrealloc() when the NULL
6865 pointer passed. Patch supplied by Larry Grill.
6867 * libtiff/{tiff.h, tif_fax3.c}:Fixes for AMD 64 platform as
6868 suggested by Jeremy C. Reed.
6870 2003-12-26 Andrey Kiselev <dron@ak4719.spb.edu>
6872 * libtiff 3.6.1 released.
6874 2003-12-24 Andrey Kiselev <dron@ak4719.spb.edu>
6876 * config.guess, config.sub: Updated from the recent upstream.
6878 2003-12-22 Andrey Kiselev <dron@ak4719.spb.edu>
6880 * libtiff/{tif_color, tif_getimage.c, tiffio.h}, man/TIFFcolor.3t:
6881 More cleanups in color conversion interface, added appropriate manual
6884 2003-12-19 Andrey Kiselev <dron@ak4719.spb.edu>
6886 * libtiff/{tif_extension.c, tif_dirinfo.c, tiff.h}: Warnings fixed as
6889 http://bugzilla.remotesensing.org/show_bug.cgi?id=357
6891 * tools/tiff2ps.c: Added support for alpha channel. Fixes
6893 http://bugzilla.remotesensing.org/show_bug.cgi?id=428
6895 * libtiff/{libtiff.def, tif_color.c, tif_getimage.c, tiffio.h}:
6896 Interface for Lab->RGB color conversion is finally cleaned up.
6897 Added support for ReferenceBlackWhite tag handling when converted from
6898 YCbCr color space. The latter closes
6900 http://bugzilla.remotesensing.org/show_bug.cgi?id=120
6902 2003-12-07 Andrey Kiselev <dron@ak4719.spb.edu>
6904 * libtiff/{tif_getimage.c, tiffio.h}: Avoid warnings.
6906 * libtiff/makefile.vc, tools/makefile.vc: Support for IJG JPEG
6909 2003-12-06 Andrey Kiselev <dron@ak4719.spb.edu>
6911 * libtiff/{tif_getimage.c, tif_aux.c}: Read WhitePoint tag from the
6912 file and properly use it for CIE Lab->RGB transform.
6914 2003-12-04 Andrey Kiselev <dron@ak4719.spb.edu>
6916 * libtiff/{tif_getimage.c, tif_color.c, tiffio.h}: YCbCr->RGB
6917 conversion routines now in the tif_color.c module. New function
6918 TIFFYCbCrtoRGB() available in TIFF API.
6920 * libtiff/tif_dirwrite.c: Handle TIFF_IFD tag type correctly.
6922 2003-12-03 Andrey Kiselev <dron@ak4719.spb.edu>
6924 * libtiff/{tif_getimage.c, tif_color.c, tiffio.h}: Improvements in
6925 CIE Lab conversion code. Start moving YCbCr stuff to the tif_color.c
6928 * libtiff/{tif_getimage.c, tiffio.h}, man{TIFFReadRGBAImage.3t,
6929 TIFFReadRGBAStrip.3t, TIFFReadRGBATile.3t, TIFFRGBAImage.3t}:
6930 Finally resolved problems with orientation handling. TIFFRGBAImage
6931 interface now properly supports all possible orientations, i.e. images
6932 will be flipped both in horizontal and vertical directions if
6933 required. 'Known bugs' section now removed from the appropriate manual
6934 pages. Closed bug entry:
6936 http://bugzilla.remotesensing.org/show_bug.cgi?id=322
6938 2003-12-02 Andrey Kiselev <dron@ak4719.spb.edu>
6940 * libtiff/tif_dir.c: Fixed order of the parameters in TIFFError()
6941 function calls as per bug
6943 http://bugzilla.remotesensing.org/show_bug.cgi?id=440
6945 2003-11-28 Ross Finlayson <libtiff@apexinternetsoftware.com>
6947 * tools/tiff2pdf.c: Some bugs fixed.
6949 2003-11-27 Andrey Kiselev <dron@ak4719.spb.edu>
6951 * libtiff/tif_luv.c: Fixed bug in 48-bit to 24-bit conversion routine,
6952 reported by Antonio Scuri.
6954 * man/tiff2pdf.1: Few improvements in page layout.
6956 * Makefile.in, /man/Makefile.in, /html/man/tiff2pdf.1.html:
6957 Added support fpr tiff2pdf manual page.
6959 2003-11-26 Ross Finlayson <libtiff@apexinternetsoftware.com>
6961 * /man/tiff2pdf.1: File added to repository.
6963 2003-11-26 Andrey Kiselev <dron@ak4719.spb.edu>
6965 * Makefile.in, /tools/{Makefile.in, makefile.vc}:
6966 Added support fpr tiff2pdf utility.
6968 2003-11-25 Ross Finlayson <libtiff@apexinternetsoftware.com>
6970 * /tools/tiff2pdf.c: File added to repository.
6972 2003-11-22 Andrey Kiselev <dron@ak4719.spb.edu>
6974 * /tools/raw2tiff.c: sqrtf() replaced with sqrt().
6976 2003-11-21 Andrey Kiselev <dron@ak4719.spb.edu>
6978 * /tools/raw2tiff.c: #include <getopt.h> removed.
6980 * tools/{Makefile.in, tiffgt.c}: Unmaintained and platform dependent
6981 sgigt utility removed and replaced with the completely rewritten
6982 portable tiffgt tool (depend on OpenGL and GLUT). Initial revision,
6983 there is a lot of things to improve.
6985 * libtiff/tif_ojpeg.c: TIFFVGetField() function now can properly
6986 extract the fields from the OJPEG files. Patch supplied by Ross
6989 * libtiff/{tiffio.h, tif_codec.c}, man/{libtiff.3t, TIFFcodec.3t}:
6990 Added new function TIFFIsCODECConfigured(), suggested by Ross
6993 2003-11-18 Andrey Kiselev <dron@ak4719.spb.edu>
6995 * libtiff/tif_dirinfo.c: Implemented binary search in
6996 _TIFFMergeFieldInfo(). Patch supplied by Ross Finlayson.
6998 * libtiff/tif_dir.h: _TIFFFindOrRegisterdInfo declaration replaced
6999 with _TIFFFindOrRegisterFieldInfo as reported by Ross Finlayson.
7001 2003-11-17 Frank Warmerdam <warmerdam@pobox.com>
7003 * tif_dirread.c: do not mark all anonymously defined tags to be
7006 2003-11-17 Andrey Kiselev <dron@ak4719.spb.edu>
7008 * contrib/pds/{tif_pdsdirread.c, tif_pdsdirwrite.c}: Use
7009 TIFFDataWidth() function insted of tiffDataWidth array.
7011 2003-11-16 Andrey Kiselev <dron@ak4719.spb.edu>
7013 * libtiff/{tiff.h, tif_dirinfo.c}: Added support for IFD (13)
7014 datatype, introduced in "Adobe PageMaker TIFF Tech. Notes".
7016 2003-11-15 Frank Warmerdam <warmerdam@pobox.com>
7018 * Makefile.in: fixed missing backslash for tif_color.c in list.
7020 2003-11-13 Andrey Kiselev <dron@ak4719.spb.edu>
7022 * libtiff/{tif_color.c, tif_getimage.c, tiffio.h, Makefile.in}:
7023 New color space conversion code: CIE L*a*b* 1976 images now supported
7024 by the TIFFRGBAImage interface. All introduced routines go to new
7025 module tif_color.c. Eventually all color conversion functions should
7028 2003-11-12 Andrey Kiselev <dron@ak4719.spb.edu>
7030 * tools/{ras2tiff.c, rasterfile.h}: Properly determine SUN Rasterfiles
7031 with the reverse byte order (it is reported by the magic header
7032 field). Problem reported by Andreas Wiesmann.
7034 * tools/raw2tiff.c, man/raw2tiff.1: Few improvements in correlation
7035 calculation function. Guessing mechanics now documented in manual page.
7037 2003-11-11 Andrey Kiselev <dron@ak4719.spb.edu>
7039 * tools/raw2tiff.c: Implemented image size guessing using
7040 correlation coefficient calculation between two neighbour lines.
7042 2003-11-09 Frank Warmerdam <warmerdam@pobox.com>
7044 * libtiff/tif_tile.c: remove spurious use of "s" (sample) in the
7045 planarconfig_contig case in TIFFComputeTile().
7047 http://bugzilla.remotesensing.org/show_bug.cgi?id=387
7049 2003-11-09 Andrey Kiselev <dron@ak4719.spb.edu>
7051 * libtiff/tiffiop.h: New macros: TIFFmax, TIFFmin and TIFFrint.
7053 2003-11-07 Andrey Kiselev <dron@ak4719.spb.edu>
7055 * libtiff/{tiffio.h, tif_strip.c}, man/{TIFFstrip.3t, libtiff.3t}:
7056 Added TIFFRawStripSize() function as suggested by Chris Hanson.
7058 2003-11-03 Andrey Kiselev <dron@ak4719.spb.edu>
7060 * libtiff/{tif_lzw.c, tif_fax3.c}: Proper support for update mode as
7063 http://bugzilla.remotesensing.org/show_bug.cgi?id=424
7065 2003-10-29 Andrey Kiselev <dron@ak4719.spb.edu>
7067 * libtiff/libtiff.def: Added TIFFReadRGBAImageOriented.
7069 * html/build.html: Added note about GNU make requirement.
7071 2003-10-25 Andrey Kiselev <dron@ak4719.spb.edu>
7073 * Makefile.in: Fixes in using MAKEFLAGS as per bug
7075 http://bugzilla.remotesensing.org/show_bug.cgi?id=418
7077 * port/install.sh.in: Option -p added to the mkdir command to create
7078 all directory tree structure before installing.
7080 2003-10-18 Andrey Kiselev <dron@ak4719.spb.edu>
7082 * /tools/tiff2ps.c: #include <strings.h> replaced with the
7083 #include <string.h>.
7085 2003-10-16 Andrey Kiselev <dron@ak4719.spb.edu>
7087 * Makefile.in: Add an absolute path to the test_pics.sh call.
7089 2003-10-12 Andrey Kiselev <dron@ak4719.spb.edu>
7091 * libtiff/tiffcomp.h: #define _BSDTYPES_DEFINED when defining BSD
7094 2003-10-09 Andrey Kiselev <dron@ak4719.spb.edu>
7096 * configure, libtiff/{Makefile.in, mkversion.c}:
7097 Relative buildings fixed.
7099 * tools/Makefile.in: Added "-I../libtiff" to the tiffset building
7102 2003-10-07 Andrey Kiselev <dron@ak4719.spb.edu>
7104 * Makefile.in: Added missed v3.6.0.html.
7106 * libtiff/tiffio.h: Typo fixed: ORIENTATION_BOTTOMLEFT replaced with
7107 ORIENTATION_BOTLEFT.
7109 2003-10-04 Andrey Kiselev <dron@ak4719.spb.edu>
7111 * 3.6.0 final release.
7113 2003-10-03 Andrey Kiselev <dron@ak4719.spb.edu>
7115 * libtiff/{tif_getimage.c, tiffio.h}, man/TIFFReadRGBAImage.3t: New
7116 function TIFFReadRGBAImageOriented() implemented to retrieve raster
7117 array with user-specified origin position as suggested by Jason Frank.
7120 http://bugzilla.remotesensing.org/show_bug.cgi?id=322
7124 * tools/tiff2rgba.c: Switched to use TIFFReadRGBAImageOriented()
7125 instead of TIFFReadRGBAImage().
7127 * tools/tiff2ps.c: Fixed possible endless loop as per bug
7129 http://bugzilla.remotesensing.org/show_bug.cgi?id=404
7131 2003-09-30 Andrey Kiselev <dron@ak4719.spb.edu>
7133 * libtiff/tif_dirread.c: Check field counter against number of fields
7136 http://bugzilla.remotesensing.org/show_bug.cgi?id=366
7138 * libtiff/tif_fax3.c: Fix wrong line numbering as per bug
7140 http://bugzilla.remotesensing.org/show_bug.cgi?id=342
7142 2003-09-25 Andrey Kiselev <dron@ak4719.spb.edu>
7144 * libtiff/{tiffiop.h, tif_dirread.c, tif_dir.c, tif_open.c,
7145 tif_close.c}: Store a list of opened IFD to prevent looping as per bug
7147 http://bugzilla.remotesensing.org/show_bug.cgi?id=383
7149 2003-09-23 Andrey Kiselev <dron@ak4719.spb.edu>
7151 * libtiff/tif_dirread.c: More fixes for EstimateStripByteCounts(). See
7153 http://bugzilla.remotesensing.org/show_bug.cgi?id=358
7155 2003-08-21 Andrey Kiselev <dron@ak4719.spb.edu>
7157 * tools/tiffmedian.c: int declaration replaced with the uint32 to
7158 support large images as per bug
7160 http://bugzilla.remotesensing.org/show_bug.cgi?id=382
7162 2003-08-12 Andrey Kiselev <dron@ak4719.spb.edu>
7164 * libtiff/Makefile.in: Fixed problem with building in different
7167 * tools/tiff2ps.c: Added missing #include <strings.h>.
7169 * libtiff/tif_dirwrite.c: More fixes for custom tags code
7172 2003-08-07 Andrey Kiselev <dron@ak4719.spb.edu>
7174 * tools/tiff2ps.c: Added page size setting when creating PS Level 2.
7175 Patch submitted by Balatoni Denes (with corrections from Tom
7178 * tools/tiff2ps.c: Fixed PS comment emitted when FlateDecode is
7179 being used. Reported by Tom Kacvinsky.
7181 * libtiff/tif_dirwrite.c: Fixed problem with custom tags writing,
7182 reported by Ashley Dreier.
7184 * libtiff/tif_print.c: Fixed problem with float tags reading, support
7185 for printing RATIONAL and BYTE tags added.
7187 2003-08-05 Andrey Kiselev <dron@ak4719.spb.edu>
7189 * libtiff/tif_lzw.c: Move LZW codec state block allocation back to
7190 TIFFInitLZW(), because its initialization in LZWSetupDecode() cause
7191 problems with predictor initialization. Remove O_RDONLY check during
7192 state block allocation to be able open LZW compressed files in update
7195 Problem exist for libtiff version of the tif_lzw.c module. One from
7196 lzw-compression-kit hasn't such troubles.
7198 2003-08-04 Frank Warmerdam <warmerdam@pobox.com>
7200 * libtiff/tif_write.c: modified tif_write.c so that the various
7201 encoded write functions use tif_postdecode() to apply byte order
7202 swapping (swab) to the application passed data buffer if the same
7203 would be done when reading. This allows us to write pixel data with
7204 more than 8 bits per sample to existing files of a non-native byte
7205 order. One side effect of this change is the applications buffer
7206 itself is altered in this case by the act of writing.
7208 http://bugzilla.remotesensing.org/show_bug.cgi?id=171
7210 2003-07-25 Frank Warmerdam <warmerdam@pobox.com>
7212 * libtiff/tif_open.c: avoid signed/unsigned casting warning
7213 initializing typemask as per patch from J.A. Strother.
7215 * tools/tiffcp.c: fixed signed/unsigned casting warning.
7217 * libtiff/tif_print.c: dos2unix conversion.
7219 * tools/tiffsplit.c: increased the maximum number of pages that
7220 can be split. Patch provided by Andrew J. Montalenti.
7222 2003-07-11 Andrey Kiselev <dron@ak4719.spb.edu>
7224 * tools/raw2tiff.c: Added option `-p' to explicitly select color
7225 space of input image data. Closes
7227 http://bugzilla.remotesensing.org/show_bug.cgi?id=364
7229 2003-07-08 Frank Warmerdam <warmerdam@pobox.com>
7231 * tif_aux.c, tif_codec.c, tif_dir.c, tif_dirread.c, tif_extension.c,
7232 tif_fax3.c, tif_getimage.c, tif_luv.c, tif_lzw.c, tif_next.c,
7233 tif_packbits.c, tif_predict.c, tif_print.c, tif_swab.c, tif_thunder.c:
7234 avoid casting warning at /W4.
7236 2003-07-03 Andrey Kiselev <dron@ak4719.spb.edu>
7238 * tools/thumbnail.c: Memory leak fixed as reported by Robert S. Kissel.
7240 2003-06-30 Andrey Kiselev <dron@ak4719.spb.edu>
7242 * libtiff/tif_pixarlog.c: Unused variables removed.
7244 * libtiff/{tif_dirread.c, tif_dir.c}: Fixed problem with
7245 EstimateStripByteCounts() as per bug
7247 http://bugzilla.remotesensing.org/show_bug.cgi?id=358
7249 * libtiff/{tif_dirwrite.c, tif_packbits.c}: Fixed compilation on
7250 64-bit architectures as per bug
7252 http://bugzilla.remotesensing.org/show_bug.cgi?id=357
7254 * libtiff/tif_dirinfo.c: TIFFDataWidth() returns 0 in case of
7257 2003-06-19 Frank Warmerdam <warmerdam@pobox.com>
7259 * libtiff/tif_print.c: fixed some serious bugs when printing
7260 custom tags ... almost certain to crash.
7262 * libtiff/tif_dirread.c: Don't ignore custom fields that are
7263 autodefined. Not sure how this got to be like this.
7265 2003-06-18 Andrey Kiselev <dron@ak4719.spb.edu>
7267 * 3.6.0 Beta2 released.
7269 * tools/tiffcmp.c, man/tiffcmp.1: Fixed problem with unused data
7270 comparing as per bug
7272 http://bugzilla.remotesensing.org/show_bug.cgi?id=349
7274 `-z' option now can be used to set the number of reported different
7277 2003-06-09 Andrey Kiselev <dron@ak4719.spb.edu>
7279 * tools/tiffcp.c, man/tiffcp.1: Added possibility to specify value -1
7280 to -r option to get the entire image as one strip. See
7282 http://bugzilla.remotesensing.org/show_bug.cgi?id=343
7286 2003-06-04 Andrey Kiselev <dron@ak4719.spb.edu>
7288 * tools/tiffcp.c: Set the correct RowsPerStrip and PageNumber
7291 http://bugzilla.remotesensing.org/show_bug.cgi?id=343
7293 2003-05-27 Frank Warmerdam <warmerdam@pobox.com>
7295 * libtiff/tif_jpeg.c: modified segment_height calculation to always
7296 be a full height tile for tiled images. Also changed error to just
7299 2003-05-25 Andrey Kiselev <dron@ak4719.spb.edu>
7301 * tools/fax2tiff.c: Page numbering fixed, as per bug
7303 http://bugzilla.remotesensing.org/show_bug.cgi?id=341
7305 2003-05-20 Andrey Kiselev <dron@ak4719.spb.edu>
7307 * contrib/ojpeg/{Makefile.in, jdhuff.h, jinclude.h, ojpeg.c, README},
7308 configure, Makefile.in: Switched back to the old behaviour. Likely
7309 better solution should be found for OJPEG support.
7311 2003-05-11 Andrey Kiselev <dron@ak4719.spb.edu>
7313 * libtiff/mkversion.c: Fixed problem with wrong string size when
7314 reading RELEASE-DATE file.
7316 2003-05-07 Andrey Kiselev <dron@ak4719.spb.edu>
7318 * tools/tiff2ps.c: Fixed bug in Ascii85EncodeBlock() function: array
7319 index was out of range.
7321 2003-05-06 Andrey Kiselev <dron@ak4719.spb.edu>
7323 * contrib/ojpeg/{Makefile.in, jdhuff.h, jinclude.h, ojpeg.c, README},
7324 configure, Makefile.in: Improved libtiff compilation with OJPEG
7325 support. Now no need for patching IJG JPEG library, hack required by
7326 libtiff will be compiled and used in-place. Implemented with
7327 suggestion and help from Bill Allombert, Debian's libjpeg maintainer.
7329 * libtiff/tif_aux.c: Properly handle TIFFTAG_PREDICTOR in
7330 TIFFVGetFieldDefaulted() function.
7332 2003-05-05 Andrey Kiselev <dron@ak4719.spb.edu>
7334 * tools/ppm2tiff.c: PPM header parser improved: now able to skip
7337 * tools/tiffdither.c: Fixed problem with bit fill order tag setting:
7338 was not copied from source image.
7340 * libtiff/getimage.c: Workaround for some images without correct
7341 info about alpha channel as per bug
7343 http://bugzilla.remotesensing.org/show_bug.cgi?id=331
7345 2003-04-29 Andrey Kiselev <dron@ak4719.spb.edu>
7347 * tools/tiff2ps.c, man/tiff2ps.1: Add ability to generate PS Level 3.
7348 It basically allows one to use the /flateDecode filter for ZIP
7349 compressed TIFF images. Patch supplied by Tom Kacvinsky. Fixes
7351 http://bugzilla.remotesensing.org/show_bug.cgi?id=328
7353 * tools/tiff2ps.c: Force deadzone printing when EPS output specified
7356 http://bugzilla.remotesensing.org/show_bug.cgi?id=325
7358 2003-04-17 Andrey Kiselev <dron@ak4719.spb.edu>
7360 * libtiff/tif_dirread.c: Removed additional check for StripByteCounts
7361 due to problems with multidirectory images. Quality of error messages
7364 2003-04-16 Andrey Kiselev <dron@ak4719.spb.edu>
7366 * tools/tiffcp.c: Fixed problem with colorspace conversion for JPEG
7367 encoded images. See bug entries
7369 http://bugzilla.remotesensing.org/show_bug.cgi?id=275
7373 http://bugzilla.remotesensing.org/show_bug.cgi?id=23
7375 * libtiff/tif_dirread.c: Additional check for StripByteCounts
7378 http://bugzilla.remotesensing.org/show_bug.cgi?id=320
7380 2003-03-12 Andrey Kiselev <dron@ak4719.spb.edu>
7382 * tools/{fax2ps.c, fax2tiff.c, gif2tiff.c, pal2rgb.c, ppm2tiff.c,
7383 ras2tiff.c, raw2tiff.c, rgb2ycbcr.c, thumbnail.c, tiff2bw.c,
7384 tiff2ps.c, tiff2rgba.c, tiffcp.c, tiffdither.c, tiffinfo.c,
7385 tiffmedian.c}: Added library version reporting facility to all tools.
7387 2003-03-06 Frank Warmerdam <warmerdam@pobox.com>
7389 * port/install.sh.in: Fixed problems with install producing paths
7390 like ///usr/local/lib on cygwin.
7392 2003-02-27 Andrey Kiselev <dron@ak4719.spb.edu>
7394 * tools/fax2tiff.c, man/fax2tiff.1: New switch (-X) to set width of
7395 raw input page. Patch supplied by Julien Gaulmin. See
7397 http://bugzilla.remotesensing.org/show_bug.cgi?id=293
7401 2003-02-26 Frank Warmerdam <warmerdam@pobox.com>
7403 * libtiff/tif_dir.c: fixed up the tif_postdecode settings
7404 responsible for byte swapping complex image data.
7406 * libtiff/tif_lzw.c: fixed so that decoder state isn't allocated till
7407 LZWSetupDecode(). Needed to read LZW files in "r+" mode.
7409 2003-02-07 Andrey Kiselev <dron@ak4719.spb.edu>
7411 * tools/ppm2tiff.c: Fixed problem with too many arguments.
7413 2003-02-04 Andrey Kiselev <dron@ak4719.spb.edu>
7415 * tools/raw2tiff.c: Memory leak fixed.
7417 2003-02-03 Andrey Kiselev <dron@ak4719.spb.edu>
7419 * tools/fax2tiff.c, man/fax2tiff.1: Applied patch from Julien Gaulmin
7420 (thanks, Julien!). More switches for fax2tiff tool for better control
7421 of input and output. Details at
7423 http://bugzilla.remotesensing.org/show_bug.cgi?id=272
7425 2003-02-03 Frank Warmerdam <warmerdam@pobox.com>
7427 * libtiff/tif_jpeg.c: Modified to defer initialization of jpeg
7428 library so that we can check if there is already any tile/strip data
7429 before deciding between creating a compressor or a decompressor.
7431 2003-01-31 Frank Warmerdam <warmerdam@pobox.com>
7433 * libtiff/tif_write.c: TIFFWriteCheck() now fails if the image is
7434 a pre-existing compressed image. That is, image writing to
7435 pre-existing compressed images is not allowed.
7437 * libtiff/tif_open.c: Removed error if opening a compressed file
7440 http://bugzilla.remotesensing.org/show_bug.cgi?id=198
7442 2003-01-31 Andrey Kiselev <dron@ak4719.spb.edu>
7444 * config.guess, config.sub: Updated to recent upstream versions.
7446 2003-01-15 Frank Warmerdam <warmerdam@pobox.com>
7448 * cut 3.6.0 Beta release.
7450 2002-12-20 Andrey Kiselev <dron@ak4719.spb.edu>
7452 * tools/fax2ps.c, man/fax2ps.1: Page size was determined
7453 in wrong way as per bug
7455 http://bugzilla.remotesensing.org/show_bug.cgi?id=239
7457 2002-12-17 Frank Warmerdam <warmerdam@pobox.com>
7459 * libtiff/tif_dirread.c: Allow wrong sized arrays in
7460 TIFFFetchStripThing().
7462 http://bugzilla.remotesensing.org/show_bug.cgi?id=49
7464 2002-12-02 Frank Warmerdam <warmerdam@pobox.com>
7466 * libtiff/tif_dir.c: fix problem with test on td_customValueCount.
7467 Was using realloc even first time. Fix by Igor Venevtsev.
7469 2002-11-30 Frank Warmerdam <warmerdam@pobox.com>
7471 * libtiff/tif_dir.c: fixed bug with resetting an existing custom
7474 * libtiff/tif_dir.c: Fixed potential problem with ascii "custom"
7475 tags in TIFFVGetField() ... added missing break.
7477 2002-10-14 Frank Warmerdam <warmerdam@pobox.com>
7479 * tools/tiff2ps.c: fixes a problem where "tiff2ps -1e" did not make
7480 the scanline buffer long enough when writing rgb triplets.
7481 The scanline needs to be 3 X the number of dots or else it will
7482 contain an incomplete triplet and programs that try to separate
7483 the eps by redefining the colorimage operator will get messed up.
7484 Patch supplied by William Bader.
7486 * Makefile.in: added tif_extension.c to file list as per
7487 http://bugzilla.remotesensing.org/show_bug.cgi?id=218.
7489 2002-10-11 Andrey Kiselev <dron@ak4719.spb.edu>
7491 * configure, config.site, libtiff/{tif_unix.c, Makefile.in}: Fix for
7492 large files (>2GiB) supporting. New option in the config.site:
7493 LARGEFILE="yes". Should be enough for I/O of the large files.
7495 2002-10-10 Frank Warmerdam <warmerdam@pobox.com>
7497 * libtiff/html/v3.6.0.html: new release notes.
7499 * libtiff/index.html: removed faq, cvs snapshot cruft. Added email
7500 link for Andrey. Pointer to v3.6.0.html.
7502 * libtiff/Makefile.in: added direct rule for tiffvers.h for release.
7504 2002-10-07 Andrey Kiselev <dron@ak4719.spb.edu>
7505 * tools/tiff2ps.c, man/tiff2ps.1: Applied patch form Sebastian Eken
7506 (thanks, Sebastian!). New switches:
7507 -b # for a bottom margin of # inches
7509 -l # for a left margin of # inches
7510 -r rotate the image by 180 degrees
7511 New features merged with code for shrinking/overlapping.
7512 Previously added -c and -n switches (for overriding PS units) renamed
7513 in -x and -y respectively.
7515 http://bugzilla.remotesensing.org/show_bug.cgi?id=200
7517 * html/man/*.html: Updated from actual manual pages.
7519 2002-10-06 Frank Warmerdam <warmerdam@pobox.com>
7521 * libtiff/tif_jpeg.c: fixed problem with boolean defined with wrong
7522 size on windows. Use #define boolean hack.
7524 http://bugzilla.remotesensing.org/show_bug.cgi?id=188
7526 * libtiff/tiff.h: Don't do special type handling in tiff.h unless
7527 USING_VISUALAGE is defined.
7529 http://bugzilla.remotesensing.org/show_bug.cgi?id=39
7531 2002-10-03 Frank Warmerdam <warmerdam@pobox.com>
7533 * libtiff/tiff.h: added COMPRESSION_JP2000.
7535 2002-10-02 Andrey Kiselev <dron@ak4719.spb.edu>
7537 * libtiff/tif_dirread.c: Another fix for the fetching SBYTE arrays
7538 by the TIFFFetchByteArray() function. Should finally resolve
7540 http://bugzilla.remotesensing.org/show_bug.cgi?id=52
7542 * configure: Set -DPIXARLOG_SUPPORT option along with -DZIP_SUPPORT
7544 * html/Makefile.in: New targets added: html and groffhtml for
7545 producing HTML representations of the manual pages automatically.
7546 html target uses man2html tool, groffhtml uses groff tool.
7548 2002-09-29 Frank Warmerdam <warmerdam@pobox.com>
7550 * configure, libtiff/Makefile.in: Added SCO OpenServer 5.0.6 support
7551 from John H. DuBois III.
7553 2002-09-15 Andrey Kiselev <dron@ak4719.spb.edu>
7555 * Makefile.in, /man/{raw2tiff.1, Makefile.in, libtiff.3}: Added
7556 manual page for raw2tiff(1) tool.
7558 2002-09-12 Andrey Kiselev <dron@ak4719.spb.edu>
7560 * /libtiff/{tiffio.h, tif_dir.h}: TIFFDataWidth() declaration moved to
7561 the tiffio.h header file.
7563 * Makefile.in, /man/{TIFFDataWidth.3t, Makefile.in, libtiff.3}: Added
7564 manual page for TIFFDataWidth() function
7566 2002-09-08 Frank Warmerdam <warmerdam@pobox.com>
7568 * libtiff/tif_dirread.c: Expand v[2] to v[4] in TIFFFetchShortPair()
7569 as per http://bugzilla.remotesensing.org/show_bug.cgi?id=196.
7571 * tools/tiff2ps.c: Don't emit BeginData/EndData DSC comments
7572 since we are unable to properly include the amount to skip.
7574 http://bugzilla.remotesensing.org/show_bug.cgi?id=80
7576 2002-09-02 Andrey Kiselev <dron@ak4719.spb.edu>
7578 * /libtiff/tif_dirread.c: Fixed problem with SBYTE type data fetching
7579 in TIFFFetchByteArray(). Problem described at
7580 http://bugzilla.remotesensing.org/show_bug.cgi?id=52
7582 2002-08-22 Andrey Kiselev <dron@ak4719.spb.edu>
7584 * /libtiff/tif_dirinfo.c: Further additions to free custom fields
7585 in _TIFFSetupFieldInfo() function.
7586 See http://bugzilla.remotesensing.org/show_bug.cgi?id=169 for details.
7588 * /libtiff/tif_lzw.c: Additional consistency checking added in
7589 LZWDecode() and LZWDecodeCompat().
7590 Fixes http://bugzilla.remotesensing.org/show_bug.cgi?id=190
7591 and http://bugzilla.remotesensing.org/show_bug.cgi?id=100
7593 * /libtiff/tif_lzw.c:
7594 Added check for valid code lengths in LZWDecode() and
7595 LZWDecodeCompat(). Fixes
7596 http://bugzilla.remotesensing.org/show_bug.cgi?id=115
7598 2002-08-16 Andrey Kiselev <dron@ak4719.spb.edu>
7600 * /libtiff/{Makefile.vc, libtiff.def}:
7601 Missed declarations added.
7603 2002-08-15 Frank Warmerdam <warmerdam@pobox.com>
7605 * tif_getimage.c: Ensure that TIFFRGBAImageBegin() returns the
7606 return code from the underlying pick function.
7608 http://bugzilla.remotesensing.org/show_bug.cgi?id=177
7610 * tif_dir.h: changed FIELD_CODEC to 66 from 64 to avoid overlap
7611 with FIELD_CUSTOM as mentioned in bug 169.
7613 * tif_close.c: added logic to free dynamically created anonymous
7614 field definitions to correct a small memory leak.
7616 http://bugzilla.remotesensing.org/show_bug.cgi?id=169
7618 2002-08-10 Andrey Kiselev <dron@ak4719.spb.edu>
7620 * /tools/{raw2tiff.c, Makefile.in, Makefile.lcc, Makefile.vc}:
7621 New tool: raw2tiff --- raw images to TIFF converter. No manual page yet.
7623 2002-07-31 Frank Warmerdam <warmerdam@pobox.com>
7625 * libtiff/tif_jpeg.c: Fixed problem with setting of nrows in
7626 JPEGDecode() as per bugzilla bug (issue 1):
7628 http://bugzilla.remotesensing.org/show_bug.cgi?id=129
7630 * libtiff/{tif_jpeg.c,tif_strip.c,tif_print.c}: Hacked tif_jpeg.c to
7631 fetch TIFFTAG_YCBCRSUBSAMPLING from the jpeg data stream if it isn't
7632 present in the tiff tags.
7634 http://bugzilla.remotesensing.org/show_bug.cgi?id=168
7636 * libtiff/tif_read.c, libtiff/tif_write.c: TIFFReadScanline() and
7637 TIFFWriteScanline() now set tif_row explicitly in case the codec has
7638 fooled with the value.
7640 http://bugzilla.remotesensing.org/show_bug.cgi?id=129
7642 2002-06-22 Andrey Kiselev <dron@ak4719.spb.edu>
7644 * /tools/tiff2ps.c: Added workaround for some software that may crash
7645 when last strip of image contains fewer number of scanlines than
7646 specified by the `/Height' variable. See
7647 http://bugzilla.remotesensing.org/show_bug.cgi?id=164
7650 2002-06-21 Andrey Kiselev <dron@ak4719.spb.edu>
7652 * tools/tiff2ps, man/tiff2ps.1: New functionality for tiff2ps utility:
7653 splitting long images in several pages. See
7654 http://bugzilla.remotesensing.org/show_bug.cgi?id=142 for explanation.
7655 Patch granted by John Williams <williams@morinda.com>.
7657 2002-06-11 Frank Warmerdam <warmerdam@pobox.com>
7659 * libtiff/contrib/win95: renamed to contrib/win_dib. Added new
7660 Tiffile.cpp example of converting TIFF files into a DIB on Win32.
7661 This one is described in:
7663 http://bugzilla.remotesensing.org/show_bug.cgi?id=143
7665 * libtiff/tif_ojpeg.c: Major upgrade from Scott. See details at:
7667 http://bugzilla.remotesensing.org/show_bug.cgi?id=156
7669 2002-05-10 Andrey Kiselev <dron@ak4719.spb.edu>
7671 * tools/tiff2ps: New commandline switches to override resolution
7672 units obtained from the input file. Closes
7673 http://bugzilla.remotesensing.org/show_bug.cgi?id=131
7675 2002-04-26 Andrey Kiselev <dron@ak4719.spb.edu>
7677 * libtiff/libtiff.def: Added missed declaration.
7679 2002-04-22 Andrey Kiselev <dron@ak4719.spb.edu>
7681 * tools/fax2tiff.c: Updated to reflect latest changes in libtiff.
7682 Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=125
7684 2002-04-20 Andrey Kiselev <dron@ak4719.spb.edu>
7686 * libtiff/tif_open.c: Pointers to custom procedures
7687 in TIFFClientOpen() are checked to be not NULL-pointers.
7689 2002-04-18 Andrey Kiselev <dron@ak4719.spb.edu>
7691 * libtiff/libtiff.def: Added missed declarations.
7693 * libtiff/tif_pixarlog.c: Updated for using tif_tagmethods structure.
7695 2002-04-16 Andrey Kiselev <dron@ak4719.spb.edu>
7697 * libtiff/tif_lzw.c: Additional checks for data integrity introduced.
7698 Should finally close
7699 http://bugzilla.remotesensing.org/show_bug.cgi?id=100
7701 2002-04-10 Andrey Kiselev <dron@ak4719.spb.edu>
7703 * tools/tiff2ps: Division by zero fixed.
7704 Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=88
7706 2002-04-09 Andrey Kiselev <dron@ak4719.spb.edu>
7708 * libtiff/: tif_dirwrite.c, tif_write.c, tiffio.h:
7709 TIFFCheckpointDirectory() routine added.
7710 Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=124
7712 * man/: TIFFWriteDirectory.3t, Makefile.in: Added description
7713 for the new function.
7715 2002-04-08 Andrey Kiselev <dron@ak4719.spb.edu>
7717 * libtiff/: tif_codec.c, tif_compress.c, tiffiop.h: Introduced
7718 additional members tif->tif_decodestatus and tif->tif_encodestatus
7719 for correct handling of unconfigured codecs (we should not try to read
7720 data or to define data size without correct codecs).
7722 * libtiff/tif_getimage.c: The way of codecs checking in TIFFRGBAImageOK
7723 changed. Now it has used tif->tif_decodestatus and
7724 tif->tif_encodestatus.
7725 Should fix http://bugzilla.remotesensing.org/show_bug.cgi?id=119 (in
7726 case of __cvs_8.tif test image).
7728 * libtiff/: tif_dirinfo.c, tif_dirread.c: Somebody makes a bug in
7729 tif_dirread.c when TIFFCreateAnonFieldInfo was introduced.
7730 Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=119 in case
7731 of _cvs_00000-00.tif, _cvs_00000-01.tif and _cvs_00000-02.tif.
7733 2002-04-04 Andrey Kiselev <dron@ak4719.spb.edu>
7735 * libtiff/: tif_lzw.c: Assertions in LZWDecode and LZWDecodeCompat
7736 replaced by warnings. Now libtiff should read corrupted LZW-compressed
7737 files by skipping bad strips.
7738 Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=100
7740 2002-04-03 Frank Warmerdam <warmerdam@pobox.com>
7742 * libtiff/tif_dirwrite.c: Removed some dead code.
7744 * libtiff/*: Cleanup some warnings.
7746 * libtiff/tif_dir.c: Fixed bug with count returned by TIFFGetField()
7747 for variable length FIELD_CUSTOM values. Was int * but should be
7750 2002-04-01 Andrey Kiselev <dron@ak4719.spb.edu>
7752 * tools/: tifcp.c: Added support for 'Orientation' tag in tiffcp
7753 utility (at cpStripToTile routine).
7755 2002-03-27 Frank Warmerdam <warmerdam@pobox.com>
7757 * tif_dirread.c: avoid div-by-zero if rowbytes is zero in chop func.
7759 http://bugzilla.remotesensing.org/show_bug.cgi?id=111
7761 * tif_print.c: Fixed so that ASCII FIELD_CUSTOM values with
7762 passcount set FALSE can be printed (such as TIFFTAG_SOFTWARE).
7764 * libtiff/tif_dir.c,tif_dirinfo.c,tif_dir.h,tif_ojpeg.c: modified so
7765 that TIFFTAG_SOFTWARE uses FIELD_CUSTOM as an example.
7767 2002-03-26 Dwight Kelly <dbmalloc@remotesensing.org>
7769 * libtiff/: tiff.h, tif_dir.c, tif_dir.h, tif_dirinfo.c, tif_dirread.c,
7770 tif_dirwrite.c: Added get/put code for new tag XMLPACKET as defined
7771 in Adobe XMP Technote. Added missing INKSET tag value from TIFF 6.0 spec
7772 INKSET_MULTIINK (=2). Added missing tags from Adobe TIFF technotes:
7773 CLIPPATH, XCLIPPATHUNITS, YCLIPPATHUNITS, OPIIMAGEID, OPIPROXY and
7774 INDEXED. Added PHOTOMETRIC tag value from TIFF technote 4 ICCLAB (=9).
7776 2002-03-26 Andrey Kiselev <dron@ak4719.spb.edu>
7778 * libtiff/: tif_getimage.c: TIFFReadRGBAStrip and TIFFReadRGBATile
7779 now also uses TIFFRGBAImageOK before reading. This is additional fix
7780 for http://bugzilla.remotesensing.org/show_bug.cgi?id=110
7782 2002-03-25 Andrey Kiselev <dron@ak4719.spb.edu>
7784 * libtiff/: tif_getimage.c: Additional check for supported
7785 codecs added in TIFFRGBAImageOK and TIFFReadRGBAImage now uses
7786 TIFFRGBAImageOK before reading.
7787 Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=110
7789 2002-03-15 Andrey Kiselev <dron@ak4719.spb.edu>
7791 * libtiff/: tif_dir.c, tif_dir.h, tif_dirinfo.c, tif_dirread.c,
7792 tif_dirwrite.c: Added routine TIFFDataWidth for detrmining
7793 TIFFDataType sizes instead of working with tiffDataWidth array
7794 directly. Should prevent out-of-borders bugs in case of unknown or
7795 broken data types. EstimateStripByteCounts routine modified, so it
7796 won't work when tags with uknown sizes founded.
7797 Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=109
7799 2002-03-13 Andrey Kiselev <dron@ak4719.spb.edu>
7801 * libtiff/tif_getimage.c: Added support for correct handling
7802 `Orientation' tag in gtTileContig. Should be added in other gt*
7803 functions as well, but I have not images for testing yet. Partially
7804 resolves http://bugzilla.remotesensing.org/show_bug.cgi?id=23
7806 2002-03-10 Andrey Kiselev <dron@ak4719.spb.edu>
7808 * libtiff/: tif_dirinfo.c, tif_dirwrite.c: Added possibility to
7809 read broken TIFFs with LONG type used for TIFFTAG_COMPRESSION,
7810 TIFFTAG_BITSPERSAMPLE, TIFFTAG_PHOTOMETRIC. Closes
7811 http://bugzilla.remotesensing.org/show_bug.cgi?id=99
7813 2002-03-08 Andrey Kiselev <dron@ak4719.spb.edu>
7815 * libtiff/Makefile.in, tools/Makefile.in: Shared library will not
7816 be stripped when installing, utility binaries will do. Closes
7817 http://bugzilla.remotesensing.org/show_bug.cgi?id=93
7819 2002-02-28 Frank Warmerdam <warmerdam@pobox.com>
7821 * man/TIFFGetField: fixed type of TIFFTAG_COPYRIGHT.
7823 * man/libtiff.3t: added copyright tag info.
7825 2002-02-11 Frank Warmerdam <warmerdam@pobox.com>
7827 * libtiff/{tiff.h,tif_fax3.c}: Add support for __arch64__.
7829 http://bugzilla.remotesensing.org/show_bug.cgi?id=94
7831 * man/Makefile.in: Patch DESTDIR handling
7833 http://bugzilla.remotesensing.org/show_bug.cgi?id=95
7835 * configure: OpenBSD changes for Sparc64 and DSO version.
7837 http://bugzilla.remotesensing.org/show_bug.cgi?id=96
7839 2002-02-05 Frank Warmerdam <warmerdam@pobox.com>
7841 * config.site/configure: added support for OJPEG=yes option to enable
7842 OJPEG support from config.site.
7844 2002-01-27 Frank Warmerdam <warmerdam@pobox.com>
7846 * html/document.html: fixed links for TIFf 6 docs.
7848 2002-01-18 Frank Warmerdam <warmerdam@pobox.com>
7850 * config.guess, config.sub: Updated from ftp.gnu.org/pub/config.
7852 * libtiff/tif_read.c: Fixed TIFFReadEncodedStrip() to fail if the
7853 decodestrip function returns anything not greater than zero as per
7854 http://bugzilla.remotesensing.org/show_bug.cgi?id=97
7856 * configure: Modify CheckForBigEndian so it can work in a cross
7859 2002-01-16 Frank Warmerdam <warmerdam@pobox.com>
7861 * tools/tiffdump.c: include TIFFTAG_JPEGTABLES in tag list.
7863 * tools/tiffset.c: fix bug in error reporting.
7865 * tools/tiffcp.c: fix several warnings that show up with -Wall.
7867 2002-01-04 Frank Warmerdam <warmerdam@pobox.com>
7869 * libtiff/tif_jpeg.c: fixed computation of segment_width for
7870 tiles files to avoid error about it not matching the
7871 cinfo.d.image_width values ("JPEGPreDecode: Improper JPEG strip/tile
7872 size.") for ITIFF files. Apparently the problem was incorporated since
7873 3.5.5, presumably during the OJPEG/JPEG work recently.
7875 2001-12-15 Frank Warmerdam <warmerdam@pobox.com>
7877 * configure, libtiff/Makefile.in: Changes for building on MacOS 10.1.
7879 http://bugzilla.remotesensing.org/show_bug.cgi?id=94
7881 * libtiff/tif_getimage.c: If DEFAULT_EXTRASAMPLE_AS_ALPHA is 1
7882 (defined in tiffconf.h - 1 by default) then the RGBA interface
7883 will assume that a fourth extra sample is ASSOCALPHA if the
7884 EXTRASAMPLE value isn't set for it. This changes the behaviour of
7885 the library, but makes it work better with RGBA files produced by
7886 lots of applications that don't mark the alpha values properly.
7888 http://bugzilla.remotesensing.org/show_bug.cgi?id=93
7889 http://bugzilla.remotesensing.org/show_bug.cgi?id=65
7891 2001-12-12 Frank Warmerdam <warmerdam@pobox.com>
7893 * libtiff/tif_jpeg.c: allow jpeg data stream sampling values to
7894 override those from tiff directory. This makes this work with
7895 ImageGear generated files.
7897 2001-12-07 Frank Warmerdam <warmerdam@pobox.com>
7899 * html/Makefile.in: added missing images per bug 92.
7901 * port/Makefile.in: fixed clean target per bug 92.
7903 2001-11-28 Frank Warmerdam <warmerdam@pobox.com>
7905 * Reissue 3.5.7 release.
7907 * libtiff/mkversion.c: Fix output of TIFF_VERSION to be
7908 YYYYMMDD so that it is increasing over time.
7910 * Makefile.in: Ensure that tiffvers.h is regenerated in the
7911 make release target.
7913 * Makefile.in: added libtiff/tiffvers.h to the release file list.
7915 2001-11-23 Frank Warmerdam <warmerdam@pobox.com>
7917 * added html/v3.5.7.html, updated html/index.html.
7919 * Makefile.in: added contrib/addtiffo/tif_ovrcache.{c,h}.
7921 2001-11-15 Frank Warmerdam <warmerdam@pobox.com>
7923 * configure: fixed test for -lm.
7925 2001-11-02 Frank Warmerdam <warmerdam@pobox.com>
7927 * Added PHOTOMETRIC_ITULAB as per bug 90.
7929 http://bugzilla.remotesensing.org/show_bug.cgi?id=90
7931 2001-10-10 Frank Warmerdam <warmerdam@pobox.com>
7933 * libtiff/tiff.h: I have created COMPRESSION_CCITT_T4,
7934 COMPRESSION_CCITT_T6, TIFFTAG_T4OPTIONS and TIFFTAG_T6OPTIONS aliases
7935 in keeping with TIFF 6.0 standard in tiff.h
7937 http://bugzilla.remotesensing.org/show_bug.cgi?id=83
7939 2001-09-26 Frank Warmerdam <warmerdam@pobox.com>
7941 * libtiff/tif_dirwrite.c: added TIFFRewriteDirectory() function.
7942 Updated TIFFWriteDirectory man page to include TIFFRewriteDirectory.
7944 2001-09-24 Frank Warmerdam <warmerdam@pobox.com>
7946 * libtiff/tif_lzw.c: Avoid MS VC++ 5.0 optimization bug.
7948 http://bugzilla.remotesensing.org/show_bug.cgi?id=78
7950 * libtiff/tif_lzw.c: added dummy LZWSetupEncode() to report an
7951 error about LZW not being available.
7953 * libtiff/tif_dir.c: propagate failure to initialize compression
7954 back from TIFFSetField() as an error status, so applications can
7957 * libtiff/tif_dir.c: removed the auto replacement of
7958 COMPRESSION_LZW with COMPRESSION_NONE in _TIFFVSetField().
7960 * Removed Makefile, tools/Makefile, port/install.sh, man/Makefile
7961 from CVS as they are all supposed to be auto-generated by configure.
7963 2001-09-22 Frank Warmerdam <warmerdam@pobox.com>
7965 * libtiff/tif_ojpeg.c: new update from Scott.
7967 2001-09-09 Frank Warmerdam <warmerdam@pobox.com>
7969 * libtif/tif_fax3.c: Removed #ifdef PURIFY logic, and modified to
7970 always use the "safe" version, even if there is a very slight
7971 cost in performance.
7973 http://bugzilla.remotesensing.org/show_bug.cgi?id=54
7975 * libtiff/Makefile.in: Fixed @DSOSUB_VERSION to be @DSOSUF_VERSION@
7978 * libtiff/tif_getimage.c: Fixed problem with reading strips or
7979 tiles that don't start on a tile boundary. Fix contributed by
7980 Josep Vallverdu (from HP), and further described in bug 47.
7982 http://bugzilla.remotesensing.org/show_bug.cgi?id=47
7984 * tools/tiff2ps.c: added OJPEG YCbCr to RGB support.
7986 * libtiff/tif_ojpeg.c: Applied substantial patch from Scott.
7988 2001-09-06 Frank Warmerdam <warmerdam@pobox.com>
7990 * libtiff/tif_packbits.c: fixed memory overrun error.
7992 http://bugzilla.remotesensing.org/show_bug.cgi?id=77
7994 2001-08-31 Frank Warmerdam <warmerdam@pobox.com>
7996 * libtiff/tif_getimage.c: relax handling of contig case where
7997 there are extra samples that are supposed to be ignored. This
7998 should now work for 8bit greyscale or palletted images.
8000 http://bugzilla.remotesensing.org/show_bug.cgi?id=75
8002 2001-08-28 Frank Warmerdam <warmerdam@pobox.com>
8004 * libtiff/tif_getimage.c: Don't complain for CMYK (separated)
8005 images with more than four samples per pixel. See:
8007 http://bugzilla.remotesensing.org/show_bug.cgi?id=73
8009 2001-08-10 Frank Warmerdam <warmerdam@pobox.com>
8011 * libtiff/tif_getimage.c: Use memmove() instead of TIFFmemcpy()
8012 in TIFFReadRGBATile() to avoid issues in cases of overlapping
8013 buffers. See Bug 69 in Bugzilla.
8015 http://bugzilla.remotesensing.org/show_bug.cgi?id=69
8017 * tools/tiff2rgba.c: fixed getopt() call so that -b works again.
8019 2001-08-09 Frank Warmerdam <warmerdam@pobox.com>
8021 * libtiff/tiff.h, libtiff/tif_fax3.c: added check for __LP64__
8022 when checking for 64 bit architectures as per bugzilla bug 67.
8024 2001-07-27 Frank Warmerdam <warmerdam@pobox.com>
8026 * man/Makefile.in: add TIFFClientOpen link as per debian submitted
8029 2001-07-20 Frank Warmerdam <warmerdam@pobox.com>
8031 * libtiff/tif_jpeg.c: Define HAVE_BOOLEAN on windows if RPCNDR.H
8034 2001-07-19 Frank Warmerdam <warmerdam@pobox.com>
8036 * libtiff/tif_open.c: Seek back to zero after failed read,
8037 before writing header.
8039 2001-07-18 Frank Warmerdam <warmerdam@pobox.com>
8041 * libtiff/tif_ojpeg.c: updates from Scott. Handles colors
8042 much better. Now depends on having patched libjpeg as per
8043 patch in contrib/ojpeg/*.
8045 2001-07-17 Frank Warmerdam <warmerdam@pobox.com>
8047 * */Makefile.in: added DESTDIR support.
8049 http://bugzilla.remotesensing.org/show_bug.cgi?id=60
8051 2001-07-16 Frank Warmerdam <warmerdam@pobox.com>
8053 * configure, libtiff/Makefile.in: applied OpenBSD patches
8056 http://bugzilla.remotesensing.org/show_bug.cgi?id=61
8058 2001-06-28 Frank Warmerdam <warmerdam@pobox.com>
8060 * libtiff/tif_getimage.c: Fixed so that failure is properly
8061 reported by gtTileContig, gtStripContig, gtTileSeparate and
8064 See http://bugzilla.remotesensing.org/show_bug.cgi?id=51
8066 * tiffcmp.c: Fixed multi samples per pixel support for ContigCompare.
8067 Updated bug section of tiffcmp.1 to note tiled file issues.
8069 See http://bugzilla.remotesensing.org/show_bug.cgi?id=53
8071 2001-06-22 Frank Warmerdam <warmerdam@pobox.com>
8073 * configure: Changes for DSO generation on AIX provided by
8074 John Marquart <jomarqua@indiana.edu>.
8076 * configure, libtiff/Makeifle.in: Modified to build DSOs properly
8077 on Darwin thanks to Robert Krajewski (rpk@alum.mit.edu) and
8078 Keisuke Fujii (fujiik@jlcuxf.kek.jp).
8080 2001-06-13 Frank Warmerdam <warmerdam@pobox.com>
8082 * tools/tiff2rgba.c: added -n flag to avoid emitting alpha component.
8084 * man/tiff2rgba.1: new
8086 2001-05-22 Frank Warmerdam <warmerdam@pobox.com>
8088 * Added tiffset and tif_ojpeg to the dist lists in Makefile.in.
8090 2001-05-13 Frank Warmerdam <warmerdam@pobox.com>
8092 * libtiff/tools/thumbnail.c: changed default output compression
8093 to packbits from LZW since LZW isn't generally available.
8095 2001-05-12 Frank Warmerdam <warmerdam@pobox.com>
8097 * libtiff/tif_ojpeg.c: New.
8098 libtiff/tif_jpeg.c, tiffconf.h, tif_getimage.c: changes related
8101 Scott Marovich <marovich@hpl.hp.com> supplied OJPEG support.
8103 2001-05-11 Frank Warmerdam <warmerdam@pobox.com>
8105 * tiff.h: removed, it duplicates libtiff/tiff.h.
8107 2001-05-08 Frank Warmerdam <warmerdam@pobox.com>
8109 * libtiff/tif_dirinfo.c: moved pixar and copyright flags to
8110 ensure everything is in order.
8112 * libtiff/libtiff.def: added TIFFCreateDirectory and
8113 TIFFDefaultStripSize as per:
8115 http://bugzilla.remotesensing.org/show_bug.cgi?id=46
8117 2001-05-02 Frank Warmerdam <warmerdam@pobox.com>
8119 * libtiff/tif_dirinfo.c: Modified the TIFF_BYTE definition for
8120 TIFFTAG_PHOTOSHOP to use a writecount of TIFF_VARIABLE2 (-3) to
8121 force use of uint32 counts instead of short counts.
8123 * libtiff/tif_dirwrite.c: Added support for TIFF_VARIABLE2 in the
8124 case of writing TIFF_BYTE/TIFF_SBYTE fields.
8126 http://bugzilla.remotesensing.org/show_bug.cgi?id=43
8128 2001-05-01 Frank Warmerdam <warmerdam@pobox.com>
8130 * libtiff/tif_dirinfo.c: removed duplicate TIFFTAG_PHOTOSHOP as per
8131 bug report http://bugzilla.remotesensing.org/show_bug.cgi?id=44
8133 2001-04-05 Frank Warmerdam <warmerdam@pobox.com>
8135 * tiffio.h: removed C++ style comment.
8137 * configure: fixed up SCRIPT_SH/SHELL handling.
8139 * Makefile.in: Fixed SCRIPT_SH/SHELL handling.
8141 * config.guess: documented more variables as per bug 40.
8143 2001-04-03 Frank Warmerdam <warmerdam@pobox.com>
8145 * configure, *Makefile.in: Various changes to improve configuration
8146 for HP/UX specifically, and also in general. They include:
8147 - Try to handle /usr/bin/sh instead of /bin/sh where necessary.
8148 - Upgrade to HP/UX 10.x+ compiler, linker and dso options.
8149 - Fixed mmap() test to avoid MMAP_FIXED ... it isn't available on HP
8150 - Use -${MAKEFLAGS} in sub makes from makefiles.
8152 http://bugzilla.remotesensing.org/show_bug.cgi?id=40
8154 2001-04-02 Frank Warmerdam <warmerdam@pobox.com>
8156 * libtiff/tiff.h: Applied hac to try and resolve the problem
8157 with the inttypes.h include file on AIX.
8159 See http://bugzilla.remotesensing.org/show_bug.cgi?id=39
8161 * VERSION: update to 3.5.7 beta in preparation for release.
8163 * configure/config.site: modified to check if -lm is needed for
8164 MACHDEPLIBS if not supplied by config.site. Needed for Darwin.
8166 * config.guess: updated wholesale to an FSF version apparently
8167 from 1998 (as opposed to 1994). This is mainly inspired by
8168 providing for MacOS X support.
8170 2001-03-29 Frank Warmerdam <warmerdam@pobox.com>
8172 * configure, Makefile.in, etc: added support for OPTIMIZER being
8173 set from config.site.
8175 2001-03-28 Frank Warmerdam <warmerdam@pobox.com>
8177 * fax2ps.c: Helge (libtiff at oldach.net) submitted fix:
8179 Here's a fix for fax2ps that corrects behaviour for non-Letter paper
8180 sizes. It fixes two problems:
8182 Without scaling (-S) the fax is now centered on the page size specified
8183 with -H and/or -W. Before, fax2ps was using an obscure and practically
8184 useless algorithm to allocate the image relative to Letter sized paper
8185 which sometime sled to useless whitespace on the paper, while at the
8186 same time cutting of the faxes printable area at the opposite border.
8188 Second, scaling now preserves aspect ratio, which makes unusual faxes
8189 (in particular short ones) print properly.
8191 See http://bugzilla.remotesensing.org/show_bug.cgi?id=35
8193 * tiff2ps.c/tiff2ps.1: Substantial changes to tiff2ps by
8194 Bruce A. Mallett. See check message for detailed information
8195 on all the changes, including a faster encoder, fixes for level
8196 2 PostScript, and support for the imagemask operator.
8198 2001-03-27 Frank Warmerdam <warmerdam@pobox.com>
8200 * libtiff/tiffio.h: Changed "#if LOGLUV_PUBLIC" to
8201 "#ifdef LOGLUV_PUBLIC" so it will work with VisualAge on AIX.
8203 http://bugzilla.remotesensing.org/show_bug.cgi?id=39
8205 2001-03-16 Frank Warmerdam <warmerdam@pobox.com>
8207 * tif_dirinfo.c: moved definition of copyright tag in field list.
8208 Apparently they have to be in sorted order by tag id.
8210 2001-03-13 Frank Warmerdam <warmerdam@pobox.com>
8212 * tif_getimage.c: Added support for 16bit minisblack/miniswhite
8213 images in RGBA interface.
8215 2001-03-02 Frank Warmerdam <warmerdam@pobox.com>
8217 * Added TIFFTAG_COPYRIGHT support.
8219 2001-02-19 Frank Warmerdam <warmerdam@pobox.com>
8221 * Brent Roman contributed updated tiffcp utility (and tiffcp.1)
8222 with support for extracting subimages with the ,n syntax, and also
8223 adding the -b bias removal flag.
8225 2001-02-16 Frank Warmerdam <warmerdam@pobox.com>
8227 * libtiff/libtiff.def: Brent Roman submitted new version adding
8228 serveral missing entry points.
8230 * libtiff/tif_dirinfo.c: don't declare tiffFieldInfo static on VMS.
8231 Some sort of weird VMS thing.
8233 http://bugzilla.remotesensing.org/show_bug.cgi?id=31
8235 * tif_luv.c/tiff.h/tiffio.h:
8236 New version of TIFF LogLuv (SGILOG) modules contributed by Greg Ward
8237 (greg@shutterfly.com). He writes:
8239 1) I improved the gamut-mapping function in tif_luv.c for imaginary
8240 colors, because some images were being super-saturated on the input
8241 side and this resulted in some strange color shifts in the output.
8243 2) I added a psuedotag in tiff.h to control random dithering during
8244 LogLuv encoding. This is turned off by default for 32-bit LogLuv and
8245 on for 24-bit LogLuv output. Dithering improves the average color
8246 accuracy over the image.
8248 3) I added a #define for LOG_LUV_PUBLIC, which is enabled by default in
8249 tiffio.h, to expose internal routines for converting between LogLuv and
8250 XYZ coordinates. This is helpful for writing more efficient,
8251 specialized conversion routines, especially for reading LogLuv files.
8253 Changes applied with minor edits.
8255 2001-01-23 Frank Warmerdam <warmerdam@pobox.com>
8257 * tif_fax3.c: keep rw_mode flag internal to fax3 state to remember
8258 whether we are encoding or decoding. This is to ensure graceful
8259 recovery if TIFFClientOpen() discovers an attempt to open a compressed
8260 file for "r+" access, and subsequently close it, as it resets the
8261 tif_mode flag to O_RDONLY in this case to avoid writes, confusing the
8262 compressor's concept of whether it is in encode or decode mode.
8264 2001-01-08 Mike Welles <mike@bangstate.com>
8266 * Makefile.in: Now cleaning up after itself after creating the .tar.gz and .zip
8268 2001-01-07 Frank Warmerdam <warmerdam@pobox.com>
8270 * html/libtiff.html: Fixed arguments in example for TIFFRGBAImageGet()
8271 as per bug report by Patrick Connor.
8273 2000-12-28 Frank Warmerdam <warmerdam@pobox.com>
8275 * Added RELEASE-DATE file to release file list.
8277 * Fixed libtiff/makefile.vc to make tiffvers.h not version.h.
8279 2000-12-22 Mike Welles <mike@bangstate.com>
8280 * added link to CVS mirror from index.html
8282 * updated html/internals.html to note that LZW compression is
8283 not supported by default.
8285 2000-12-22 Frank Warmerdam <warmerdam@pobox.com>
8287 * updated html/libtiff.html to not point at Niles' old JPL web site
8288 for the man pages, point at www.libtiff.org.
8290 2000-12-21 Frank Warmerdam <warmerdam@pobox.com>
8292 * libtiff/tif_apple.c: Applied "Carbon" support patches supplied by
8293 Leonard Rosenthol <leonardr@lazerware.com>. May interfere
8294 with correct building on older systems. If so, please let me know.
8296 2000-12-19 Mike Welles <mike@bangsate.com>
8298 * Took out LZW Encoding from tif_lzw.c
8300 * Created HOWTO-RELEASE
8302 * Created html/v3.5.6.html
8304 * updated index.html
8306 2000-12-01 Frank Warmerdam <warmerdam@pobox.com>
8308 * Added patches for EOFB support in tif_fax3.c and tif_fax3.h.
8309 Patches supplied by Frank Cringle <fdc@cliwe.ping.de>
8310 Example file at: ftp://ftp.remotesensing.org/pub/libtiff/eofb_396.tif
8312 2000-11-24 Frank Warmerdam <warmerdam@pobox.com>
8314 * libtiff/Makefile.in: Added an installPrivateHdrs and install-private
8315 target so that the private headers required by libgeotiff can be
8316 installed with the others. They are not installed by default.
8318 * libtiff/Makefile.in: Added @MACHLIBDEPS@ to LINUXdso and GNULDdso
8319 targets so libtiff.so will be built with an explicit dependency
8322 * libtiff/Makefile.in: Use softlinks to link libtiff.so.3 to
8325 * libtiff/Makefile.in & configure: Remove all references to the ALPHA
8326 file, or ALPHA version logic. Added stuff about DIST_POINT in
8327 place of DIST_TYPE and the alpha release number stuff.
8329 2000-11-22 Frank Warmerdam <warmerdam@pobox.com>
8331 * I have applied a patch from Steffen Moeller <moeller@ebi.ac.uk> to
8332 the configure script so that it now accepts the --prefix, and
8333 --exec-prefix directives.
8335 2000-11-13 Frank Warmerdam <warmerda@cs46980-c>
8337 * I have made a variety of modifications in an effort to ensure the
8338 TIFFLIB_VERSION macro is automatically generated from the RELEASE-DATE
8339 file which seems to be updated regularly.
8341 o mkversion.c now reads RELEASE-DATE and emits TIFFLIB_VERSION in
8342 version include file.
8343 o renamed version.h to tiffvers.h because we now have to install it
8344 with the public libtiff include files.
8345 o include tiffvers.h in tiffio.h.
8346 o updated tif_version.c to use tiffvers.h.
8347 o Updated Makefile.in accordingly.
8349 * As per http://bugzilla.remotesensing.org/show_bug.cgi?id=25
8350 I have updated the win32 detection rules in tiffcomp.h.
8352 2000-10-20 Frank Warmerdam <warmerda@cs46980-c>
8354 * tif_getimage.c: Fixed RGBA translation for YCbCr images for which
8355 the strip/tile width and height aren't multiples of the sampling size.
8356 See http://bugzilla.remotesensing.org/show_bug.cgi?id=20
8357 Some patches from Rick LaMont of Dot C Software.
8359 * Modified tif_packbits.c encoder to avoid compressing more
8360 data than provided if rowsize doesn't factor into provided data
8361 (such as occurs for YCbCr).
8363 2000-10-19 Frank Warmerdam <warmerda@cs46980-c>
8365 * tools/rgb2ycbcr.c: fixed output strip size to account for vertical
8366 roundup if rows_per_strip not a multiple of vertical sample size.
8368 2000-10-16 Frank Warmerdam <warmerda@cs46980-c>
8370 * tif_dir.c: Clear TIFF_ISTILED flag in TIFFDefaultDirectory
8371 as per http://bugzilla.remotesensing.org/show_bug.cgi?id=18
8372 from vandrove@vc.cvut.cz.
8374 * Modified tif_packbits.c decoding to avoid overrunning the
8375 output buffer, and to issue a warning if data needs to be
8376 discarded. See http://bugzilla.remotesensing.org/show_bug.cgi?id=18
8378 2000-10-12 Frank Warmerdam <warmerda@cs46980-c>
8380 * Modified tiff2bw to ensure portions add to 100%, and that
8381 white is properly recovered.
8383 See bug http://bugzilla.remotesensing.org/show_bug.cgi?id=15
8384 Patch c/o Stanislav Brabec <utx@penguin.cz>
8386 2000-09-30 Frank Warmerdam <warmerda@cs46980-c>
8388 * Modified TIFFClientOpen() to emit an error on an attempt to
8389 open a comperessed file for update (O_RDWR/r+) access. This is
8390 because the compressor/decompressor code gets very confused when
8391 the mode is O_RDWR, assuming this means writing only. See
8392 bug http://bugzilla.remotesensing.org/show_bug.cgi?id=13
8394 2000-09-27 Frank Warmerdam <warmerda@cs46980-c>
8396 * Added GNULDdso target an`d switched linux and freebsd to use it.
8398 2000-09-26 Frank Warmerdam <warmerda@cs46980-c>
8400 * Applied patch for 0x0000 sequences in tif_fax3.h's definition
8401 of EXPAND1D() as per bug 11 (from Roman).
8403 2000-09-25 Frank Warmerdam <warmerda@cs46980-c>
8404 * Fixed tiffcomp.h to avoid win32 stuff if unix #defined, to improve
8405 cygwin compatibility.
8407 * Applied patch from Roman Shpount to tif_fax3.c. This seems to
8408 be a proper fix to the buffer sizing problem. See
8409 http://bugzilla.remotesensing.org/show_bug.cgi?id=11
8411 * Fixed tif_getimage.c to fix overrun bug with YCbCr images without
8412 downsampling. http://bugzilla.remotesensing.org/show_bug.cgi?id=10
8413 Thanks to Nick Lamb <njl98r@ecs.soton.ac.uk> for reporting the
8414 bug and proving the patch.
8416 2000-09-18 Frank Warmerdam <warmerda@cs46980-c>
8418 * Fixed tif_jpeg.c so avoid destroying the decompressor before
8419 we are done access data thanks to bug report from:
8420 Michael Eckstein <eckstein@gepro.cz>.
8422 * Reverted tif_flush change.
8424 2000-09-14 Frank Warmerdam <warmerda@cs46980-c>
8426 * tif_flush.c: Changed so that TIFFFlushData() doesn't return an
8427 error when TIFF_BEENWRITING is not set. This ensures that the
8428 directory contents can still be flushed by TIFFFlush().
8430 2000-08-14 Frank Warmerdam <warmerda@rommel.atlsci.com>
8432 * tif_open.c: Don't set MMAP for O_RDWR files.
8434 * tif_open.c: Set STRIPCHOP_DEFAULT for O_RDWR as well as O_RDONLY
8435 so that files opened for update can be strip chopped too.
8437 * tif_read.c: fixed up bug with files missing rowsperstrip and
8438 the strips per separation fix done a few weeks ago.
8440 2000-07-17 Frank Warmerdam <warmerda@cs46980-c>
8442 * Tentatively added support for SAMPLEFORMAT_COMPLEXIEEEFP, and
8443 SAMPLEFORMAT_COMPLEXINT.
8445 2000-07-13 Mike Welles <mike@onshore.com>
8447 * index.html, bugs.html: added bugzilla info.
8449 2000-07-12 Frank Warmerdam <warmerda@rommel.atlsci.com>
8451 * tif_read.c: fix subtle bug with determining the number of
8452 rows for strips that are the last strip in a separation but
8453 not the last strip of all in TIFFReadEncodedStrip().
8455 * Applied 16/32 bit fix to tif_fax3.c. Fix supplied by
8456 Peter Skarpetis <peters@serendipity-software.com.au>
8458 2000-06-15 Frank Warmerdam <warmerda@rommel.atlsci.com>
8460 * Modified tiffio.h logic with regard to including windows.h. It
8461 won't include it when building with __CYGWIN__.
8463 2000-05-11 Frank Warmerdam <warmerda@cs46980-c>
8465 * README: update to mention www.libtiff.org, don't list Sam's old
8468 * configure: Fixed DSO test for Linux as per patch from
8469 Jan Van Buggenhout <chipzz@Ace.ULYSSIS.Student.KULeuven.Ac.Be>.
8471 2000-04-21 Frank Warmerdam <warmerda@rommel.atlsci.com>
8473 * libtiff/tif_dirread.c: Don't use estimate strip byte count for
8474 one tile/strip images with an offset, and byte count of zero. These
8475 could be "unpopulated" images.
8477 2000-04-18 Frank Warmerdam <warmerda@rommel.atlsci.com>
8479 * contrib/addtiffo: Added "averaging" resampling option.
8481 * tools/tiffsplit.c: Copy TIFFTAG_SAMPLEFORMAT.
8483 Tue Apr 18 16:18:08 2000 Frank Warmerdam <warmerda@esabot.atlsci.com>
8485 * tools/Makefile.in: Modified to install properly on SGI.
8487 2000-04-12 Mike Welles <mike@onshore.com>
8488 * configure: Fixed stupid mistake in libc6 test on Linux
8490 2000-04-04 Mike Welles <mike@onshore.com>
8491 * tif_win32.c: Applied patch to fix overreads and ovverwrites
8492 caught by BoundsChecker. From Arvan Pritchard
8493 <arvan.pritchard@infomatix.co.uk> (untested).
8495 * tif_getimage.c: Applied patch to silence VC6 warnings. From
8496 Arvan Pritchard <arvan.pritchard@informatix.co.uk>
8498 * tif_lzw.c: Applied patch to silence VC6 warnings. From
8499 Arvan Pritchard <arvan.pritchard@informatix.co.uk>
8501 2000-03-28 Frank Warmerdam <warmerda@cs46980-c>
8503 * Added contrib/stream (stream io) code submitted by Avi Bleiweiss.
8505 2000-03-28 Frank Warmerdam <warmerda@cs46980-c> *** 3.5.5 release ***
8507 * fax2ps: Fixed mixup of width and height in bounding box statement
8508 as per submission by Nalin Dahyabhai <nalin@redhat.com>.
8510 2000-03-27 Mike Welles <mike@onshore.com>
8512 * fax2ps: Modified printruns to take uint32 instead of uint16.
8513 Patch courtesy of Bernt Herd <herd@herdsoft.com>
8515 2000-03-20 Mike Welles <mike@onshore.com>
8517 * configure: added test for libc6 for linux targets. Bug reported by
8518 Stanislav Brabec <utx@k332.feld.cvut.cz>
8520 * Added 3.5 docs to html/Makefile.in.
8521 Thanks to Stanislav Brabec <utx@k332.feld.cvut.cz>
8523 * configure: fixed bugs in sed scripts
8524 (applied sed script s:/@:s;@:;s:/s;;:;: to configure).
8525 fix submitted to Stanislav Brabec <utx@k332.feld.cvut.cz>
8527 * tools/iptcutil was not in files list, and wasn't being
8528 added to tar archive. Updated Makefile.in.
8530 2000-03-17 Frank Warmerdam <warmerda@cs46980-c>
8532 * tif_fax3.c: Fixed serious bug introduced during the uint16->uint32
8533 conversion for the run arrays.
8535 2000-03-03 Frank Warmerdam <warmerda@cs46980-c.mtnk1.on.wave.home.com>
8537 * Set td_sampleformat default to SAMPLEFORMAT_UINT instead of
8538 SAMPLEFORMAT_VOID in TIFFDefaultDirectory() in tif_dir.c.
8540 2000-03-02 Frank Warmerdam <warmerda@cs46980-c.mtnk1.on.wave.home.com>
8542 * Added "GetDefaulted" support for TIFFTAG_SAMPLEFORMAT in tif_aux.c.
8544 * Patched tif_fax3.c so that dsp->runs is allocated a bit bigger
8545 to avoid overruns encountered with frle_bug.tif.
8547 Tue Feb 15 22:01:05 2000 Frank Warmerdam <warmerda@gdal.velocet.ca>
8549 * Fixed tools/tiffcmp so that stopondiff testing works.
8550 Patch care of Joseph Orost <joe@sanskrit.lz.att.com>.
8552 2000-01-28 <warmerda@CS46980-B>
8554 * Modified tif_unix.c to support 2-4GB seeks if USE_64BIT_API is
8555 set to 1, and added default (off) setting in tiffconf.h. This
8556 should eventually be set by the configure script somehow.
8558 The original work on all these 2-4GB changes was done by
8559 Peter Smith (psmith@creo.com).
8561 * Modified tif_win32.c to support 2-4GB seeks.
8563 * tentatively changed toff_t to be unsigned instead of signed to
8564 facilitate support for 2-4GB files.
8566 * Updated a variety of files to use toff_t. Fixed some mixups
8567 between toff_t and tsize_t.
8569 Fri Jan 28 10:13:49 2000 Frank Warmerdam <warmerda@gdal.velocet.ca>
8571 * Largely reimplemented contrib/addtiffo to avoid temp files,
8572 updating the TIFF file in place. Fixed a few other bugs to.
8574 * Set tif_rawdatasize to zero when freeing raw data buffer in
8575 TIFFWriteDirectory().
8577 * Enabled "REWRITE_HACK" in tif_write.c by default.
8579 * Fix bug in tif_write.c when switching between reading one directory
8580 and writing to another.
8582 * Made TIFFWriteCheck() public, and added TIFFCreateDirectory()
8584 Wed Jan 5 12:37:48 2000 Frank Warmerdam <warmerda@gdal.velocet.ca>
8586 * Added TIFFmemory(3t) functions to libtiff.def.
8588 Tue Jan 4 13:39:00 2000 Frank Warmerdam <warmerda@gdal.velocet.ca>
8590 * Added libtiff/libtiff.def to TIFFILES distribution list.
8592 Mon Dec 27 12:13:39 EST 1999 Mike Welles <mike@onshore.com>
8594 * Created lzw compression kit, as a new module (libtiff-lzw-compression-kit).
8596 * Altered descriptions in tools to reflect "by default" lzw not supported
8598 * Updated index.html to note lzw compression kit.
8600 Tue Dec 21 14:01:51 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8602 * Added fax3sm_winnt.c to distribution list in Makefile.in.
8604 Tue Dec 21 11:04:45 EST 1999 Mike Welles <mike@onshore.com> *** 3.5.4 release ***
8606 * Aadded Pixar tag support. Contributed by Phil Beffery <phil@pixar.com>
8608 * Made one more change to tif_dir.c for removal of LZW compression. Also added notice
8609 when LZW compression invoked.
8611 * Changed default compression in tools to TIFF_PACKBITS, and changed usage descriptions
8612 in tools to reflect removal of LZW compression
8614 Mon Dec 20 18:39:02 EST 1999 Mike Welles <mike@onshore.com>
8616 * Fixed bug that caused LZW (non) compression to segfault. Added
8617 warning about LZW compression removed being removed, and why.
8619 * Added nostrip to install in tools/Makefile.in so that debugging
8622 Tue Dec 7 12:04:47 EST 1999 Mike Welles <mike@onshore.com>
8624 * Added patch from Ivo Penzar <ivo.penzar@infolink-software.com>,
8625 supporting Adobe ZIP deflate. Untested.
8627 Sat Dec 4 15:47:11 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8629 * Made Packbits the default compression in tools/tiff2rgba.c instead
8632 Tue Nov 30 14:41:43 1999 Frank Warmerdam <warmerda@gdal.velocet.ca> *** 3.5.3. release ***
8634 * Added tif_luv to contrib/djgpp/Makefile.lib.
8636 Tue Nov 30 14:15:32 EST 1999 Mike Welles <mike@onshore.com>
8638 * Added zip creation to relase makefile target
8640 * Added html for TIFFWriteTile.3t man page.
8642 Tue Nov 30 09:20:16 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8644 * Added some changes to tif_write.c to support rewriting existing
8645 fixed sized tiles and strips. Code mods disabled by default, only
8646 enabled if REWRITE_HACK is defined for now.
8648 Mon Nov 29 11:43:42 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8650 * Added TIFFWriteTile.3t man page.
8652 Sun Nov 28 20:36:18 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8654 * Added notes on use of makefile.vc in build.html, and fixed
8655 email subscription address.
8657 199-11-28 Mike Welles <mike@onshore.com>
8659 * Fixed apocalypse-inducing y2k bug in contrib/ras/ras2tiff.c
8661 * Did some casts cleaning up to reduce compiler warnings in tif_fax3.c,
8662 from Bruce Carmeron <cameron@petris.com> -- modifications of
8663 changes made by Frank (sun cc still complained on cast).
8665 * Added tiffconf.h to install target per request from Bill
8666 Radcliffe <billr@corbis.com>: "We need a way for ImageMagick to
8667 know features have been compiled into the TIFF library in order to
8668 handle things properly".
8670 Sat Nov 27 16:49:21 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8672 * fixed various VC++ warnings as suggested by Gilles Vollant
8673 <info@winimage.com>.
8675 Wed Nov 24 12:08:16 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8677 * Modified TIFFquery.3t man pages info on TIFFIsByteSwapped() to
8678 not imply applications are responsible for image data swapping.
8680 1999-11-22 Mike Welles <mike@onshore.com>
8681 * HTML-ized the man pages, added to html/man
8683 * Removed LZW Compression to comply with Unisys patent extortion.
8685 1999-09-29 Mike Welles <mike@onshore.com>
8686 * Corrected one remaining 16 -> 32 bit value in tif_fax3.c,
8687 From Ivo Penzar <ivo.penzar@infolink-software.com.
8689 * Added patch from Ivo Penzar to have TiffAdvanceDirectory handle
8690 memory mapped files. <ivo.penzar@infolink-software.com>
8692 1999-09-26 Mike Welles <mike@onshore.com> *** 3.5.2 release ***
8693 * Corrected alpha versioning.
8695 * Removed distinction between alpha and release targets in Makefile.in.
8697 * added release.stamp target, which tags cvs tree, and updates
8700 * added releasediff target, which diffs tree with source as of
8701 date in "RELEASE-DATE"
8703 * Ticked up version to 3.5.2 (alpha 01 -- but I think we'll moving
8704 away from alpha/non-alpha distinctions).
8706 * updated html to reflect release
8708 1999-09-23 <warmerda@CS46980-B>
8710 * Set O_BINARY for tif_unix.c open() ... used on cygwin for instance.
8712 * Added CYGWIN case in configure.
8714 Fri Sep 17 00:13:51 CEST 1999 Mike Welles <mike@onshore.com>
8716 * Applied Francois Dagand's patch to handle fax decompression bug.
8717 (sizes >= 65536 were failing)
8719 Tue Sep 14 21:31:43 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8721 * Applied "a" mode fix to tif_win32.c/TIFFOpen() as suggested
8722 by Christopher Lawton <clawton@mathworks.com>
8724 Wed Sep 8 08:19:18 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8726 * Added IRIX/gcc, and OSF/1 4.x support on behalf of
8727 Albert Chin-A-Young <china@thewrittenword.com>
8729 * Added TIFFReassignTagToIgnore() API on behalf of
8730 Bruce Cameron <cameron@petris.com>. Man page still pending.
8732 Wed Aug 25 11:39:07 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8734 * Added test target in Makefile, test_pics.sh script and pics/*.rpt
8735 files to provide for a rudimentary testsuite.
8737 * Added contrib/tags back from old distribution ... fixed up a bit.
8739 1999-08-16 <warmerda@CS46980-B>
8741 * Added simple makefile.vc makefiles for building with MS VC++
8742 on Windows NT/98/95 in console mode. Stuff in contrib/win* make give
8743 better solutions for some users.
8745 Mon Aug 16 21:52:11 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8747 * Added addtiffo (add overviews to a TIFF file) in contrib. Didn't
8748 put it in tools since part of it is in C++.
8750 1999-08-16 Michael L. Welles <mike@kurtz.fake>
8752 * Updated html/index.html with anon CVS instructions.
8754 Mon Aug 16 13:18:41 1999 Frank Warmerdam <warmerda@gdal.velocet.ca>
8756 * pre-remove so link before softlink in LINUXdso action in
8757 libtiff/Makefile.in to avoid failure on LINUXdso builds other than
8760 * Fixed problem with cvtcmap() in tif_getimage.c modifying the
8761 colormaps owned by the TIFF handle itself when trying to fixup wrong
8762 (eight bit) colormaps. Corrected by maintaining a private copy of
8765 * Added TIFFReadRGBATile()/TIFFReadRGBAStrip() support in
8768 * CVS Repository placed at remotesensing.org. ChangeLog added.