Update to 4.0.10
PR: 233146 Reported by: Roger Leigh
This commit is contained in:
parent
c413ab11c1
commit
768048f9f1
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=485196
@ -2,8 +2,7 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= tiff
|
||||
PORTVERSION= 4.0.9
|
||||
PORTREVISION= 1
|
||||
PORTVERSION= 4.0.10
|
||||
CATEGORIES= graphics
|
||||
MASTER_SITES= http://download.osgeo.org/libtiff/
|
||||
|
||||
@ -23,7 +22,10 @@ USE_LDCONFIG= yes
|
||||
GNU_CONFIGURE= yes
|
||||
CONFIGURE_ARGS+= --with-jpeg-include-dir=${LOCALBASE}/include \
|
||||
--with-jpeg-lib-dir=${LOCALBASE}/lib \
|
||||
--without-x
|
||||
--without-x \
|
||||
--disable-webp \
|
||||
--disable-zstd
|
||||
|
||||
INSTALL_TARGET= install-strip
|
||||
TEST_TARGET= check
|
||||
|
||||
|
@ -1,3 +1,3 @@
|
||||
TIMESTAMP = 1511092936
|
||||
SHA256 (tiff-4.0.9.tar.gz) = 6e7bdeec2c310734e734d19aae3a71ebe37a4d842e0e23dbb1b8921c0026cfcd
|
||||
SIZE (tiff-4.0.9.tar.gz) = 2305681
|
||||
TIMESTAMP = 1541970522
|
||||
SHA256 (tiff-4.0.10.tar.gz) = 2c52d11ccaf767457db0c46795d9c7d1a8d8f76f68b0b800a3dfe45786b996e4
|
||||
SIZE (tiff-4.0.10.tar.gz) = 2402867
|
||||
|
@ -1,34 +0,0 @@
|
||||
From c6f41df7b581402dfba3c19a1e3df4454c551a01 Mon Sep 17 00:00:00 2001
|
||||
From: Even Rouault <even.rouault@spatialys.com>
|
||||
Date: Sun, 31 Dec 2017 15:09:41 +0100
|
||||
Subject: [PATCH] libtiff/tif_print.c: TIFFPrintDirectory(): fix null pointer dereference on corrupted file. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2770
|
||||
|
||||
---
|
||||
libtiff/tif_print.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/libtiff/tif_print.c b/libtiff/tif_print.c
|
||||
index 9959d35..8deceb2 100644
|
||||
--- libtiff/tif_print.c
|
||||
+++ libtiff/tif_print.c
|
||||
@@ -667,13 +667,13 @@ TIFFPrintDirectory(TIFF* tif, FILE* fd, long flags)
|
||||
#if defined(__WIN32__) && (defined(_MSC_VER) || defined(__MINGW32__))
|
||||
fprintf(fd, " %3lu: [%8I64u, %8I64u]\n",
|
||||
(unsigned long) s,
|
||||
- (unsigned __int64) td->td_stripoffset[s],
|
||||
- (unsigned __int64) td->td_stripbytecount[s]);
|
||||
+ td->td_stripoffset ? (unsigned __int64) td->td_stripoffset[s] : 0,
|
||||
+ td->td_stripbytecount ? (unsigned __int64) td->td_stripbytecount[s] : 0);
|
||||
#else
|
||||
fprintf(fd, " %3lu: [%8llu, %8llu]\n",
|
||||
(unsigned long) s,
|
||||
- (unsigned long long) td->td_stripoffset[s],
|
||||
- (unsigned long long) td->td_stripbytecount[s]);
|
||||
+ td->td_stripoffset ? (unsigned long long) td->td_stripoffset[s] : 0,
|
||||
+ td->td_stripbytecount ? (unsigned long long) td->td_stripbytecount[s] : 0);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
--
|
||||
libgit2 0.26.0
|
||||
|
@ -1,117 +0,0 @@
|
||||
diff --git a/libtiff/tif_dir.c b/libtiff/tif_dir.c
|
||||
index 2ccaf44..cbf2b69 100644
|
||||
--- libtiff/tif_dir.c
|
||||
+++ libtiff/tif_dir.c
|
||||
@@ -1067,6 +1067,9 @@ _TIFFVGetField(TIFF* tif, uint32 tag, va_list ap)
|
||||
if (td->td_samplesperpixel - td->td_extrasamples > 1) {
|
||||
*va_arg(ap, uint16**) = td->td_transferfunction[1];
|
||||
*va_arg(ap, uint16**) = td->td_transferfunction[2];
|
||||
+ } else {
|
||||
+ *va_arg(ap, uint16**) = NULL;
|
||||
+ *va_arg(ap, uint16**) = NULL;
|
||||
}
|
||||
break;
|
||||
case TIFFTAG_REFERENCEBLACKWHITE:
|
||||
diff --git a/tools/tiff2pdf.c b/tools/tiff2pdf.c
|
||||
index d1a9b09..484776c 100644
|
||||
--- tools/tiff2pdf.c
|
||||
+++ tools/tiff2pdf.c
|
||||
@@ -237,7 +237,7 @@ typedef struct {
|
||||
float tiff_whitechromaticities[2];
|
||||
float tiff_primarychromaticities[6];
|
||||
float tiff_referenceblackwhite[2];
|
||||
- float* tiff_transferfunction[3];
|
||||
+ uint16* tiff_transferfunction[3];
|
||||
int pdf_image_interpolate; /* 0 (default) : do not interpolate,
|
||||
1 : interpolate */
|
||||
uint16 tiff_transferfunctioncount;
|
||||
@@ -1047,6 +1047,8 @@ void t2p_read_tiff_init(T2P* t2p, TIFF* input){
|
||||
uint16 pagen=0;
|
||||
uint16 paged=0;
|
||||
uint16 xuint16=0;
|
||||
+ uint16 tiff_transferfunctioncount=0;
|
||||
+ uint16* tiff_transferfunction[3];
|
||||
|
||||
directorycount=TIFFNumberOfDirectories(input);
|
||||
t2p->tiff_pages = (T2P_PAGE*) _TIFFmalloc(TIFFSafeMultiply(tmsize_t,directorycount,sizeof(T2P_PAGE)));
|
||||
@@ -1147,26 +1149,48 @@ void t2p_read_tiff_init(T2P* t2p, TIFF* input){
|
||||
}
|
||||
#endif
|
||||
if (TIFFGetField(input, TIFFTAG_TRANSFERFUNCTION,
|
||||
- &(t2p->tiff_transferfunction[0]),
|
||||
- &(t2p->tiff_transferfunction[1]),
|
||||
- &(t2p->tiff_transferfunction[2]))) {
|
||||
- if((t2p->tiff_transferfunction[1] != (float*) NULL) &&
|
||||
- (t2p->tiff_transferfunction[2] != (float*) NULL) &&
|
||||
- (t2p->tiff_transferfunction[1] !=
|
||||
- t2p->tiff_transferfunction[0])) {
|
||||
- t2p->tiff_transferfunctioncount = 3;
|
||||
- t2p->tiff_pages[i].page_extra += 4;
|
||||
- t2p->pdf_xrefcount += 4;
|
||||
- } else {
|
||||
- t2p->tiff_transferfunctioncount = 1;
|
||||
- t2p->tiff_pages[i].page_extra += 2;
|
||||
- t2p->pdf_xrefcount += 2;
|
||||
- }
|
||||
- if(t2p->pdf_minorversion < 2)
|
||||
- t2p->pdf_minorversion = 2;
|
||||
+ &(tiff_transferfunction[0]),
|
||||
+ &(tiff_transferfunction[1]),
|
||||
+ &(tiff_transferfunction[2]))) {
|
||||
+
|
||||
+ if((tiff_transferfunction[1] != (uint16*) NULL) &&
|
||||
+ (tiff_transferfunction[2] != (uint16*) NULL)
|
||||
+ ) {
|
||||
+ tiff_transferfunctioncount=3;
|
||||
+ } else {
|
||||
+ tiff_transferfunctioncount=1;
|
||||
+ }
|
||||
} else {
|
||||
- t2p->tiff_transferfunctioncount=0;
|
||||
+ tiff_transferfunctioncount=0;
|
||||
}
|
||||
+
|
||||
+ if (i > 0){
|
||||
+ if (tiff_transferfunctioncount != t2p->tiff_transferfunctioncount){
|
||||
+ TIFFError(
|
||||
+ TIFF2PDF_MODULE,
|
||||
+ "Different transfer function on page %d",
|
||||
+ i);
|
||||
+ t2p->t2p_error = T2P_ERR_ERROR;
|
||||
+ return;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ t2p->tiff_transferfunctioncount = tiff_transferfunctioncount;
|
||||
+ t2p->tiff_transferfunction[0] = tiff_transferfunction[0];
|
||||
+ t2p->tiff_transferfunction[1] = tiff_transferfunction[1];
|
||||
+ t2p->tiff_transferfunction[2] = tiff_transferfunction[2];
|
||||
+ if(tiff_transferfunctioncount == 3){
|
||||
+ t2p->tiff_pages[i].page_extra += 4;
|
||||
+ t2p->pdf_xrefcount += 4;
|
||||
+ if(t2p->pdf_minorversion < 2)
|
||||
+ t2p->pdf_minorversion = 2;
|
||||
+ } else if (tiff_transferfunctioncount == 1){
|
||||
+ t2p->tiff_pages[i].page_extra += 2;
|
||||
+ t2p->pdf_xrefcount += 2;
|
||||
+ if(t2p->pdf_minorversion < 2)
|
||||
+ t2p->pdf_minorversion = 2;
|
||||
+ }
|
||||
+
|
||||
if( TIFFGetField(
|
||||
input,
|
||||
TIFFTAG_ICCPROFILE,
|
||||
@@ -1827,10 +1851,9 @@ void t2p_read_tiff_data(T2P* t2p, TIFF* input){
|
||||
&(t2p->tiff_transferfunction[0]),
|
||||
&(t2p->tiff_transferfunction[1]),
|
||||
&(t2p->tiff_transferfunction[2]))) {
|
||||
- if((t2p->tiff_transferfunction[1] != (float*) NULL) &&
|
||||
- (t2p->tiff_transferfunction[2] != (float*) NULL) &&
|
||||
- (t2p->tiff_transferfunction[1] !=
|
||||
- t2p->tiff_transferfunction[0])) {
|
||||
+ if((t2p->tiff_transferfunction[1] != (uint16*) NULL) &&
|
||||
+ (t2p->tiff_transferfunction[2] != (uint16*) NULL)
|
||||
+ ) {
|
||||
t2p->tiff_transferfunctioncount=3;
|
||||
} else {
|
||||
t2p->tiff_transferfunctioncount=1;
|
@ -1,6 +1,6 @@
|
||||
--- Makefile.in.orig 2017-05-21 18:49:35 UTC
|
||||
--- Makefile.in.orig 2018-11-10 15:24:13 UTC
|
||||
+++ Makefile.in
|
||||
@@ -495,19 +495,6 @@ distclean-libtool:
|
||||
@@ -492,19 +492,6 @@ distclean-libtool:
|
||||
-rm -f libtool config.lt
|
||||
install-dist_docDATA: $(dist_doc_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
|
@ -1,6 +1,6 @@
|
||||
--- man/tiffcrop.1.orig 2016-09-25 20:05:52 UTC
|
||||
--- man/tiffcrop.1.orig 2017-12-02 15:21:49 UTC
|
||||
+++ man/tiffcrop.1
|
||||
@@ -496,7 +496,6 @@ the portrait or landscape option. The pa
|
||||
@@ -495,7 +495,6 @@ the portrait or landscape option. The pa
|
||||
the image. It breaks each original image into a series of smaller images
|
||||
that will fit on the target paper size at the specified resolution.
|
||||
.fi
|
||||
|
@ -24,11 +24,11 @@ include/tiffvers.h
|
||||
lib/libtiff.a
|
||||
lib/libtiff.so
|
||||
lib/libtiff.so.5
|
||||
lib/libtiff.so.5.3.0
|
||||
lib/libtiff.so.5.4.0
|
||||
lib/libtiffxx.a
|
||||
lib/libtiffxx.so
|
||||
lib/libtiffxx.so.5
|
||||
lib/libtiffxx.so.5.3.0
|
||||
lib/libtiffxx.so.5.4.0
|
||||
libdata/pkgconfig/libtiff-4.pc
|
||||
man/man1/fax2ps.1.gz
|
||||
man/man1/fax2tiff.1.gz
|
||||
@ -280,6 +280,7 @@ man/man3/libtiff.3tiff.gz
|
||||
%%PORTDOCS%%%%DOCSDIR%%/v3.9.2.html
|
||||
%%PORTDOCS%%%%DOCSDIR%%/v4.0.0.html
|
||||
%%PORTDOCS%%%%DOCSDIR%%/v4.0.1.html
|
||||
%%PORTDOCS%%%%DOCSDIR%%/v4.0.10.html
|
||||
%%PORTDOCS%%%%DOCSDIR%%/v4.0.2.html
|
||||
%%PORTDOCS%%%%DOCSDIR%%/v4.0.3.html
|
||||
%%PORTDOCS%%%%DOCSDIR%%/v4.0.4.html
|
||||
|
Loading…
Reference in New Issue
Block a user