Sync from SUSE:SLFO:Main netpbm revision 6a25909c8000d6ee170771ede7fa0987

This commit is contained in:
Adrian Schröter 2024-10-01 08:49:11 +02:00
parent 5d98681344
commit dc6904aabc
8 changed files with 285 additions and 236 deletions

BIN
netpbm-11.5.2-documentation.tar.bz2 (Stored with Git LFS)

Binary file not shown.

Binary file not shown.

BIN
netpbm-11.7.0-documentation.tar.bz2 (Stored with Git LFS) Normal file

Binary file not shown.

BIN
netpbm-11.7.0-nohpcdtoppm-noppmtompeg.tar.bz2 (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,7 +1,7 @@
Index: netpbm-11.5.2/converter/other/pngx.c
Index: netpbm-11.7.0/converter/other/pngx.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/pngx.c
+++ netpbm-11.5.2/converter/other/pngx.c
--- netpbm-11.7.0.orig/converter/other/pngx.c
+++ netpbm-11.7.0/converter/other/pngx.c
@@ -370,6 +370,7 @@ pngx_srgbIntentDesc(pngx_srgbIntent cons
case PNGX_ABSOLUTE_COLORIMETRIC: return "ABSOLUTE_COLORIMETRIC";
}
@ -18,22 +18,22 @@ Index: netpbm-11.5.2/converter/other/pngx.c
}
Index: netpbm-11.5.2/lib/libpm.c
Index: netpbm-11.7.0/lib/libpm.c
===================================================================
--- netpbm-11.5.2.orig/lib/libpm.c
+++ netpbm-11.5.2/lib/libpm.c
--- netpbm-11.7.0.orig/lib/libpm.c
+++ netpbm-11.7.0/lib/libpm.c
@@ -440,6 +440,7 @@ pm_maxvaltobits(int const maxval) {
pm_error( "maxval of %d is too large!", maxval );
pm_error("maxval of %d is too large!", maxval);
assert(false);
+ return 0;
}
Index: netpbm-11.5.2/lib/libpnm3.c
Index: netpbm-11.7.0/lib/libpnm3.c
===================================================================
--- netpbm-11.5.2.orig/lib/libpnm3.c
+++ netpbm-11.5.2/lib/libpnm3.c
--- netpbm-11.7.0.orig/lib/libpnm3.c
+++ netpbm-11.7.0/lib/libpnm3.c
@@ -446,6 +446,8 @@ pnm_bittoxel(bit const inputBit,
case PBM_WHITE: return pnm_whitexel(maxval, PBM_TYPE); break;
default:

View File

@ -1,8 +1,8 @@
Index: netpbm-11.5.2/analyzer/pgmtexture.c
Index: netpbm-11.7.0/analyzer/pgmtexture.c
===================================================================
--- netpbm-11.5.2.orig/analyzer/pgmtexture.c
+++ netpbm-11.5.2/analyzer/pgmtexture.c
@@ -98,7 +98,7 @@ vector(unsigned int const nl,
--- netpbm-11.7.0.orig/analyzer/pgmtexture.c
+++ netpbm-11.7.0/analyzer/pgmtexture.c
@@ -96,7 +96,7 @@ vector(unsigned int const nl,
unsigned int i;
assert(nh >= nl); assert(nh <= UINT_MAX-1);
@ -11,7 +11,7 @@ Index: netpbm-11.5.2/analyzer/pgmtexture.c
MALLOCARRAY(v, (unsigned) (nh - nl + 1));
if (v == NULL)
@@ -136,6 +136,7 @@ matrix (unsigned int const nrl,
@@ -134,6 +134,7 @@ matrix (unsigned int const nrl,
assert(nrh >= nrl); assert(nrh <= UINT_MAX-1);
/* allocate pointers to rows */
@ -19,7 +19,7 @@ Index: netpbm-11.5.2/analyzer/pgmtexture.c
MALLOCARRAY(matrix, (unsigned) (nrh - nrl + 1));
if (matrix == NULL)
pm_error("Unable to allocate memory for a matrix.");
@@ -143,7 +144,7 @@ matrix (unsigned int const nrl,
@@ -141,7 +142,7 @@ matrix (unsigned int const nrl,
matrix -= ncl;
assert (nch >= ncl); assert(nch <= UINT_MAX-1);
@ -28,10 +28,10 @@ Index: netpbm-11.5.2/analyzer/pgmtexture.c
/* allocate rows and set pointers to them */
for (i = nrl; i <= nrh; ++i) {
MALLOCARRAY(matrix[i], (unsigned) (nch - ncl + 1));
Index: netpbm-11.5.2/converter/other/gemtopnm.c
Index: netpbm-11.7.0/converter/other/gemtopnm.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/gemtopnm.c
+++ netpbm-11.5.2/converter/other/gemtopnm.c
--- netpbm-11.7.0.orig/converter/other/gemtopnm.c
+++ netpbm-11.7.0/converter/other/gemtopnm.c
@@ -152,7 +152,7 @@ main(int argc, const char ** argv) {
type = PPM_TYPE;
@ -41,10 +41,10 @@ Index: netpbm-11.5.2/converter/other/gemtopnm.c
{
/* allocate input row data structure */
unsigned int plane;
Index: netpbm-11.5.2/converter/other/jpegtopnm.c
Index: netpbm-11.7.0/converter/other/jpegtopnm.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/jpegtopnm.c
+++ netpbm-11.5.2/converter/other/jpegtopnm.c
--- netpbm-11.7.0.orig/converter/other/jpegtopnm.c
+++ netpbm-11.7.0/converter/other/jpegtopnm.c
@@ -894,6 +894,8 @@ convertImage(FILE *
/* Calculate output image dimensions so we can allocate space */
jpeg_calc_output_dimensions(cinfoP);
@ -54,10 +54,10 @@ Index: netpbm-11.5.2/converter/other/jpegtopnm.c
/* Start decompressor */
jpeg_start_decompress(cinfoP);
Index: netpbm-11.5.2/converter/other/pbmtopgm.c
Index: netpbm-11.7.0/converter/other/pbmtopgm.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/pbmtopgm.c
+++ netpbm-11.5.2/converter/other/pbmtopgm.c
--- netpbm-11.7.0.orig/converter/other/pbmtopgm.c
+++ netpbm-11.7.0/converter/other/pbmtopgm.c
@@ -88,6 +88,7 @@ main(int argc, const char ** argv) {
up = cmdline.convRows / 2; down = cmdline.convRows - up;
@ -66,10 +66,10 @@ Index: netpbm-11.5.2/converter/other/pbmtopgm.c
maxval = MIN(PGM_OVERALLMAXVAL, cmdline.convCols * cmdline.convRows);
pgm_writepgminit(stdout, cols, rows, maxval, 0) ;
Index: netpbm-11.5.2/converter/other/pnmtoddif.c
Index: netpbm-11.7.0/converter/other/pnmtoddif.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/pnmtoddif.c
+++ netpbm-11.5.2/converter/other/pnmtoddif.c
--- netpbm-11.7.0.orig/converter/other/pnmtoddif.c
+++ netpbm-11.7.0/converter/other/pnmtoddif.c
@@ -627,6 +627,7 @@ main(int argc, char *argv[]) {
switch (PNM_FORMAT_TYPE(format)) {
case PBM_TYPE:
@ -86,11 +86,11 @@ Index: netpbm-11.5.2/converter/other/pnmtoddif.c
ip.bytes_per_line = 3 * cols;
ip.bits_per_pixel = 24;
ip.spectral = 5;
Index: netpbm-11.5.2/converter/other/pnmtojpeg.c
Index: netpbm-11.7.0/converter/other/pnmtojpeg.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/pnmtojpeg.c
+++ netpbm-11.5.2/converter/other/pnmtojpeg.c
@@ -1068,6 +1068,7 @@ computeRescalingArray(JSAMPLE **
--- netpbm-11.7.0.orig/converter/other/pnmtojpeg.c
+++ netpbm-11.7.0/converter/other/pnmtojpeg.c
@@ -1066,6 +1066,7 @@ computeRescalingArray(JSAMPLE **
JSAMPLE * rescale;
long val;
@ -98,10 +98,10 @@ Index: netpbm-11.5.2/converter/other/pnmtojpeg.c
MALLOCARRAY(rescale, maxval + 1);
if (!rescale)
Index: netpbm-11.5.2/converter/other/pnmtops.c
Index: netpbm-11.7.0/converter/other/pnmtops.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/pnmtops.c
+++ netpbm-11.5.2/converter/other/pnmtops.c
--- netpbm-11.7.0.orig/converter/other/pnmtops.c
+++ netpbm-11.7.0/converter/other/pnmtops.c
@@ -298,17 +298,21 @@ parseCommandLine(int argc, const char **
validateCompDimension(width, psScaleFactor, "-width value");
validateCompDimension(height, psScaleFactor, "-height value");
@ -125,10 +125,10 @@ Index: netpbm-11.5.2/converter/other/pnmtops.c
cmdlineP->imageheight = imageheight * psScaleFactor;
}
else
Index: netpbm-11.5.2/converter/other/pnmtorle.c
Index: netpbm-11.7.0/converter/other/pnmtorle.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/pnmtorle.c
+++ netpbm-11.5.2/converter/other/pnmtorle.c
--- netpbm-11.7.0.orig/converter/other/pnmtorle.c
+++ netpbm-11.7.0/converter/other/pnmtorle.c
@@ -19,6 +19,8 @@
* If you modify this software, you should include a notice giving the
* name of the person performing the modification, the date of modification,
@ -138,10 +138,10 @@ Index: netpbm-11.5.2/converter/other/pnmtorle.c
*/
/*
* pnmtorle - A program which will convert pbmplus (ppm or pgm) images
Index: netpbm-11.5.2/converter/other/pnmtosgi.c
Index: netpbm-11.7.0/converter/other/pnmtosgi.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/pnmtosgi.c
+++ netpbm-11.5.2/converter/other/pnmtosgi.c
--- netpbm-11.7.0.orig/converter/other/pnmtosgi.c
+++ netpbm-11.7.0/converter/other/pnmtosgi.c
@@ -185,6 +185,7 @@ buildChannels(FILE * const ifP,
ScanElem * temp;
@ -150,10 +150,10 @@ Index: netpbm-11.5.2/converter/other/pnmtosgi.c
MALLOCARRAY_NOFAIL(table, channels * rows);
} else
table = NULL;
Index: netpbm-11.5.2/converter/other/rletopnm.c
Index: netpbm-11.7.0/converter/other/rletopnm.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/rletopnm.c
+++ netpbm-11.5.2/converter/other/rletopnm.c
--- netpbm-11.7.0.orig/converter/other/rletopnm.c
+++ netpbm-11.7.0/converter/other/rletopnm.c
@@ -19,6 +19,8 @@
* If you modify this software, you should include a notice giving the
* name of the person performing the modification, the date of modification,
@ -163,11 +163,11 @@ Index: netpbm-11.5.2/converter/other/rletopnm.c
*/
/*
* rletopnm - A conversion program to convert from Utah's "rle" image format
Index: netpbm-11.5.2/converter/other/sgitopnm.c
Index: netpbm-11.7.0/converter/other/sgitopnm.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/sgitopnm.c
+++ netpbm-11.5.2/converter/other/sgitopnm.c
@@ -377,10 +377,14 @@ readChannels(FILE * const ifP,
--- netpbm-11.7.0.orig/converter/other/sgitopnm.c
+++ netpbm-11.7.0/converter/other/sgitopnm.c
@@ -375,10 +375,14 @@ readChannels(FILE * const ifP,
MALLOCARRAY_NOFAIL(image, head->ysize);
} else {
maxchannel = 3;
@ -183,10 +183,10 @@ Index: netpbm-11.5.2/converter/other/sgitopnm.c
for (channel = 0; channel < maxchannel; ++channel) {
unsigned int row;
Index: netpbm-11.5.2/converter/other/tifftopnm.c
Index: netpbm-11.7.0/converter/other/tifftopnm.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/tifftopnm.c
+++ netpbm-11.5.2/converter/other/tifftopnm.c
--- netpbm-11.7.0.orig/converter/other/tifftopnm.c
+++ netpbm-11.7.0/converter/other/tifftopnm.c
@@ -1358,7 +1358,9 @@ convertRasterByRows(pnmOut * const
if (UINT_MAX/cols < spp)
pm_error("Image is too wide/deep (%u x %u) for computations",
@ -198,11 +198,11 @@ Index: netpbm-11.5.2/converter/other/tifftopnm.c
if (samplebuf == NULL)
pm_error("can't allocate memory for row buffer");
Index: netpbm-11.5.2/converter/other/xwdtopnm.c
Index: netpbm-11.7.0/converter/other/xwdtopnm.c
===================================================================
--- netpbm-11.5.2.orig/converter/other/xwdtopnm.c
+++ netpbm-11.5.2/converter/other/xwdtopnm.c
@@ -224,6 +224,10 @@ processX10Header(X10WDFileHeader * cons
--- netpbm-11.7.0.orig/converter/other/xwdtopnm.c
+++ netpbm-11.7.0/converter/other/xwdtopnm.c
@@ -222,6 +222,10 @@ processX10Header(X10WDFileHeader * cons
*colorsP = pnm_allocrow(2);
PNM_ASSIGN1((*colorsP)[0], 0);
PNM_ASSIGN1((*colorsP)[1], *maxvalP);
@ -213,7 +213,7 @@ Index: netpbm-11.5.2/converter/other/xwdtopnm.c
*padrightP =
(((h10P->pixmap_width + 15) / 16) * 16 - h10P->pixmap_width) * 8;
*bitsPerItemP = 16;
@@ -673,6 +677,7 @@ processX11Header(const X11WDFileHeader *
@@ -671,6 +675,7 @@ processX11Header(const X11WDFileHeader *
"%u bits per pixel, which is too many for this program "
"to compute",
h11FixedP->pixmap_width, h11FixedP->bits_per_pixel);
@ -221,10 +221,10 @@ Index: netpbm-11.5.2/converter/other/xwdtopnm.c
*padrightP =
h11FixedP->bytes_per_line * 8 -
h11FixedP->pixmap_width * h11FixedP->bits_per_pixel;
Index: netpbm-11.5.2/converter/pbm/mdatopbm.c
Index: netpbm-11.7.0/converter/pbm/mdatopbm.c
===================================================================
--- netpbm-11.5.2.orig/converter/pbm/mdatopbm.c
+++ netpbm-11.5.2/converter/pbm/mdatopbm.c
--- netpbm-11.7.0.orig/converter/pbm/mdatopbm.c
+++ netpbm-11.7.0/converter/pbm/mdatopbm.c
@@ -283,10 +283,13 @@ main(int argc, const char **argv) {
pm_readlittleshort(ifP, &yy); nInCols = yy;
}
@ -240,10 +240,10 @@ Index: netpbm-11.5.2/converter/pbm/mdatopbm.c
data = pbm_allocarray(nOutCols, nOutRows);
Index: netpbm-11.5.2/converter/pbm/mgrtopbm.c
Index: netpbm-11.7.0/converter/pbm/mgrtopbm.c
===================================================================
--- netpbm-11.5.2.orig/converter/pbm/mgrtopbm.c
+++ netpbm-11.5.2/converter/pbm/mgrtopbm.c
--- netpbm-11.7.0.orig/converter/pbm/mgrtopbm.c
+++ netpbm-11.7.0/converter/pbm/mgrtopbm.c
@@ -105,6 +105,8 @@ readMgrHeader(FILE * const ifP,
interpHdrWidth (head, colsP);
interpHdrHeight(head, rowsP);
@ -253,10 +253,10 @@ Index: netpbm-11.5.2/converter/pbm/mgrtopbm.c
*padrightP = ((*colsP + pad - 1) / pad) * pad - *colsP;
}
Index: netpbm-11.5.2/converter/pbm/pbmtogem.c
Index: netpbm-11.7.0/converter/pbm/pbmtogem.c
===================================================================
--- netpbm-11.5.2.orig/converter/pbm/pbmtogem.c
+++ netpbm-11.5.2/converter/pbm/pbmtogem.c
--- netpbm-11.7.0.orig/converter/pbm/pbmtogem.c
+++ netpbm-11.7.0/converter/pbm/pbmtogem.c
@@ -79,6 +79,7 @@ putinit (int const rows, int const cols)
bitsperitem = 0;
bitshift = 7;
@ -265,10 +265,10 @@ Index: netpbm-11.5.2/converter/pbm/pbmtogem.c
outmax = (cols + 7) / 8;
outrow = (unsigned char *) pm_allocrow (outmax, sizeof (unsigned char));
lastrow = (unsigned char *) pm_allocrow (outmax, sizeof (unsigned char));
Index: netpbm-11.5.2/converter/pbm/pbmtogo.c
Index: netpbm-11.7.0/converter/pbm/pbmtogo.c
===================================================================
--- netpbm-11.5.2.orig/converter/pbm/pbmtogo.c
+++ netpbm-11.5.2/converter/pbm/pbmtogo.c
--- netpbm-11.7.0.orig/converter/pbm/pbmtogo.c
+++ netpbm-11.7.0/converter/pbm/pbmtogo.c
@@ -158,6 +158,7 @@ main(int argc,
bitrow = pbm_allocrow(cols);
@ -277,11 +277,11 @@ Index: netpbm-11.5.2/converter/pbm/pbmtogo.c
rucols = ( cols + 7 ) / 8;
bytesperrow = rucols; /* GraphOn uses bytes */
rucols = rucols * 8;
Index: netpbm-11.5.2/converter/pbm/pbmtolj.c
Index: netpbm-11.7.0/converter/pbm/pbmtolj.c
===================================================================
--- netpbm-11.5.2.orig/converter/pbm/pbmtolj.c
+++ netpbm-11.5.2/converter/pbm/pbmtolj.c
@@ -122,7 +122,11 @@ parseCommandLine(int argc, const char **
--- netpbm-11.7.0.orig/converter/pbm/pbmtolj.c
+++ netpbm-11.7.0/converter/pbm/pbmtolj.c
@@ -120,7 +120,11 @@ parseCommandLine(int argc, const char **
static void
allocateBuffers(unsigned int const cols) {
@ -293,11 +293,11 @@ Index: netpbm-11.5.2/converter/pbm/pbmtolj.c
packBufferSize = rowBufferSize + (rowBufferSize + 127) / 128 + 1;
deltaBufferSize = rowBufferSize + rowBufferSize / 8 + 10;
Index: netpbm-11.5.2/converter/pbm/pbmtomda.c
Index: netpbm-11.7.0/converter/pbm/pbmtomda.c
===================================================================
--- netpbm-11.5.2.orig/converter/pbm/pbmtomda.c
+++ netpbm-11.5.2/converter/pbm/pbmtomda.c
@@ -206,6 +206,7 @@ main(int argc, const char ** argv) {
--- netpbm-11.7.0.orig/converter/pbm/pbmtomda.c
+++ netpbm-11.7.0/converter/pbm/pbmtomda.c
@@ -204,6 +204,7 @@ main(int argc, const char ** argv) {
nOutRowsUnrounded = cmdline.dscale ? nInRows/2 : nInRows;
@ -305,10 +305,10 @@ Index: netpbm-11.5.2/converter/pbm/pbmtomda.c
nOutRows = ((nOutRowsUnrounded + 3) / 4) * 4;
/* MDA wants rows a multiple of 4 */
nOutCols = nInCols / 8;
Index: netpbm-11.5.2/converter/pbm/pbmtoppa/pbm.c
Index: netpbm-11.7.0/converter/pbm/pbmtoppa/pbm.c
===================================================================
--- netpbm-11.5.2.orig/converter/pbm/pbmtoppa/pbm.c
+++ netpbm-11.5.2/converter/pbm/pbmtoppa/pbm.c
--- netpbm-11.7.0.orig/converter/pbm/pbmtoppa/pbm.c
+++ netpbm-11.7.0/converter/pbm/pbmtoppa/pbm.c
@@ -157,6 +157,7 @@ pbm_readline(pbm_stat * const pbmSt
break;
case P4: {
@ -325,10 +325,10 @@ Index: netpbm-11.5.2/converter/pbm/pbmtoppa/pbm.c
pbmStatP->revdata = malloc ((pbmStatP->width+7)/8);
memcpy(pbmStatP->revdata, data, (pbmStatP->width+7)/8);
--pbmStatP->current_line;
Index: netpbm-11.5.2/converter/pbm/pbmtoppa/pbmtoppa.c
Index: netpbm-11.7.0/converter/pbm/pbmtoppa/pbmtoppa.c
===================================================================
--- netpbm-11.5.2.orig/converter/pbm/pbmtoppa/pbmtoppa.c
+++ netpbm-11.5.2/converter/pbm/pbmtoppa/pbmtoppa.c
--- netpbm-11.7.0.orig/converter/pbm/pbmtoppa/pbmtoppa.c
+++ netpbm-11.7.0/converter/pbm/pbmtoppa/pbmtoppa.c
@@ -456,6 +456,7 @@ main(int argc, char *argv[]) {
pm_error("main(): unrecognized parameter '%s'", argv[argn]);
}
@ -337,10 +337,10 @@ Index: netpbm-11.5.2/converter/pbm/pbmtoppa/pbmtoppa.c
Pwidth = (Width+7)/8;
printer.fptr = ofP;
Index: netpbm-11.5.2/converter/pbm/thinkjettopbm.l
Index: netpbm-11.7.0/converter/pbm/thinkjettopbm.l
===================================================================
--- netpbm-11.5.2.orig/converter/pbm/thinkjettopbm.l
+++ netpbm-11.5.2/converter/pbm/thinkjettopbm.l
--- netpbm-11.7.0.orig/converter/pbm/thinkjettopbm.l
+++ netpbm-11.7.0/converter/pbm/thinkjettopbm.l
@@ -115,8 +115,10 @@ DIG [0-9]
<RASTERMODE>\033\*b{DIG}+W {
int l;
@ -361,10 +361,10 @@ Index: netpbm-11.5.2/converter/pbm/thinkjettopbm.l
pbm_writepbminit(stdout, maxRowLength*8, rowCount, 0);
packed_bitrow = malloc(maxRowLength);
Index: netpbm-11.5.2/converter/pgm/lispmtopgm.c
Index: netpbm-11.7.0/converter/pgm/lispmtopgm.c
===================================================================
--- netpbm-11.5.2.orig/converter/pgm/lispmtopgm.c
+++ netpbm-11.5.2/converter/pgm/lispmtopgm.c
--- netpbm-11.7.0.orig/converter/pgm/lispmtopgm.c
+++ netpbm-11.7.0/converter/pgm/lispmtopgm.c
@@ -167,6 +167,7 @@ main(int argc, const char ** argv) {
pgm_writepgminit(stdout, cols, rows, maxval, 0);
@ -373,10 +373,10 @@ Index: netpbm-11.5.2/converter/pgm/lispmtopgm.c
grayrow = pgm_allocrow(ROUNDUP(cols, 8));
for (row = 0; row < rows; ++row) {
Index: netpbm-11.5.2/converter/pgm/psidtopgm.c
Index: netpbm-11.7.0/converter/pgm/psidtopgm.c
===================================================================
--- netpbm-11.5.2.orig/converter/pgm/psidtopgm.c
+++ netpbm-11.5.2/converter/pgm/psidtopgm.c
--- netpbm-11.7.0.orig/converter/pgm/psidtopgm.c
+++ netpbm-11.7.0/converter/pgm/psidtopgm.c
@@ -81,6 +81,7 @@ main(int argc,
pgm_writepgminit(stdout, cols, rows, maxval, 0);
@ -385,10 +385,10 @@ Index: netpbm-11.5.2/converter/pgm/psidtopgm.c
grayrow = pgm_allocrow(ROUNDUP(cols, 8));
for (row = 0; row < rows; ++row) {
Index: netpbm-11.5.2/converter/ppm/ilbmtoppm.c
Index: netpbm-11.7.0/converter/ppm/ilbmtoppm.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/ilbmtoppm.c
+++ netpbm-11.5.2/converter/ppm/ilbmtoppm.c
--- netpbm-11.7.0.orig/converter/ppm/ilbmtoppm.c
+++ netpbm-11.7.0/converter/ppm/ilbmtoppm.c
@@ -617,6 +617,7 @@ decodeRow(FILE * const ifP,
rawtype * chP;
@ -421,10 +421,10 @@ Index: netpbm-11.5.2/converter/ppm/ilbmtoppm.c
static void
multi_adjust(ColorMap * const cmapP,
Index: netpbm-11.5.2/converter/ppm/imgtoppm.c
Index: netpbm-11.7.0/converter/ppm/imgtoppm.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/imgtoppm.c
+++ netpbm-11.5.2/converter/ppm/imgtoppm.c
--- netpbm-11.7.0.orig/converter/ppm/imgtoppm.c
+++ netpbm-11.7.0/converter/ppm/imgtoppm.c
@@ -85,6 +85,7 @@ main(int argc, const char ** argv) {
len = atoi((char*) buf);
if (fread(buf, len, 1, ifP) != 1)
@ -441,10 +441,10 @@ Index: netpbm-11.5.2/converter/ppm/imgtoppm.c
if (len != cols * rows)
pm_message(
"pixel data length (%u) does not match image size (%u)",
Index: netpbm-11.5.2/converter/ppm/Makefile
Index: netpbm-11.7.0/converter/ppm/Makefile
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/Makefile
+++ netpbm-11.5.2/converter/ppm/Makefile
--- netpbm-11.7.0.orig/converter/ppm/Makefile
+++ netpbm-11.7.0/converter/ppm/Makefile
@@ -11,7 +11,7 @@ SUBDIRS = hpcdtoppm ppmtompeg
PORTBINARIES = 411toppm eyuvtoppm gouldtoppm ilbmtoppm imgtoppm \
@ -454,10 +454,10 @@ Index: netpbm-11.5.2/converter/ppm/Makefile
ppmtoacad ppmtoapplevol ppmtoarbtxt ppmtoascii \
ppmtobmp ppmtoeyuv ppmtogif ppmtoicr ppmtoilbm \
ppmtoleaf ppmtolj ppmtomitsu ppmtoneo \
Index: netpbm-11.5.2/converter/ppm/pcxtoppm.c
Index: netpbm-11.7.0/converter/ppm/pcxtoppm.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/pcxtoppm.c
+++ netpbm-11.5.2/converter/ppm/pcxtoppm.c
--- netpbm-11.7.0.orig/converter/ppm/pcxtoppm.c
+++ netpbm-11.7.0/converter/ppm/pcxtoppm.c
@@ -375,6 +375,7 @@ pcxPlanesToPixels(unsigned char * const
pm_error("can't handle more than 1 bit per pixel");
@ -474,20 +474,20 @@ Index: netpbm-11.5.2/converter/ppm/pcxtoppm.c
rawcols = bytesPerLine * 8 / bitsPerPixel;
if (headerCols > rawcols) {
Index: netpbm-11.5.2/converter/ppm/picttoppm.c
Index: netpbm-11.7.0/converter/ppm/picttoppm.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/picttoppm.c
+++ netpbm-11.5.2/converter/ppm/picttoppm.c
--- netpbm-11.7.0.orig/converter/ppm/picttoppm.c
+++ netpbm-11.7.0/converter/ppm/picttoppm.c
@@ -1,3 +1,5 @@
+#error "Unfixable. Don't ship me"
+
/*
* picttoppm.c -- convert a MacIntosh PICT file to PPM format.
*
Index: netpbm-11.5.2/converter/ppm/ppmtoeyuv.c
Index: netpbm-11.7.0/converter/ppm/ppmtoeyuv.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/ppmtoeyuv.c
+++ netpbm-11.5.2/converter/ppm/ppmtoeyuv.c
--- netpbm-11.7.0.orig/converter/ppm/ppmtoeyuv.c
+++ netpbm-11.7.0/converter/ppm/ppmtoeyuv.c
@@ -117,6 +117,7 @@ chrominanceBlue(pixel const p) {
static void
createMultiplicationTables(pixval const maxval) {
@ -496,10 +496,10 @@ Index: netpbm-11.5.2/converter/ppm/ppmtoeyuv.c
MALLOCARRAY_NOFAIL(mult299 , maxval+1);
MALLOCARRAY_NOFAIL(mult587 , maxval+1);
MALLOCARRAY_NOFAIL(mult114 , maxval+1);
Index: netpbm-11.5.2/converter/ppm/ppmtoilbm.c
Index: netpbm-11.7.0/converter/ppm/ppmtoilbm.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/ppmtoilbm.c
+++ netpbm-11.5.2/converter/ppm/ppmtoilbm.c
--- netpbm-11.7.0.orig/converter/ppm/ppmtoilbm.c
+++ netpbm-11.7.0/converter/ppm/ppmtoilbm.c
@@ -188,6 +188,7 @@ makeValTable(int const oldmaxval,
unsigned int i;
int * table;
@ -538,10 +538,10 @@ Index: netpbm-11.5.2/converter/ppm/ppmtoilbm.c
}
switch (mode) {
Index: netpbm-11.5.2/converter/ppm/ppmtolj.c
Index: netpbm-11.7.0/converter/ppm/ppmtolj.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/ppmtolj.c
+++ netpbm-11.5.2/converter/ppm/ppmtolj.c
--- netpbm-11.7.0.orig/converter/ppm/ppmtolj.c
+++ netpbm-11.7.0/converter/ppm/ppmtolj.c
@@ -212,6 +212,7 @@ printRaster(FILE * const ifP,
pm_error("Image is uncomputably wide (%u columns)", cols);
}
@ -550,10 +550,10 @@ Index: netpbm-11.5.2/converter/ppm/ppmtolj.c
obuf = (unsigned char *) pm_allocrow(cols * 3, sizeof(unsigned char));
cbuf = (unsigned char *) pm_allocrow(cols * 6, sizeof(unsigned char));
Index: netpbm-11.5.2/converter/ppm/ppmtomitsu.c
Index: netpbm-11.7.0/converter/ppm/ppmtomitsu.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/ppmtomitsu.c
+++ netpbm-11.5.2/converter/ppm/ppmtomitsu.c
--- netpbm-11.7.0.orig/converter/ppm/ppmtomitsu.c
+++ netpbm-11.7.0/converter/ppm/ppmtomitsu.c
@@ -68,6 +68,8 @@ mediaSize(const char * const media,
medias = MSize_User;
@ -563,11 +563,11 @@ Index: netpbm-11.5.2/converter/ppm/ppmtomitsu.c
medias.maxcols *= 2;
medias.maxrows *= 2;
}
Index: netpbm-11.5.2/converter/ppm/ppmtopcx.c
Index: netpbm-11.7.0/converter/ppm/ppmtopcx.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/ppmtopcx.c
+++ netpbm-11.5.2/converter/ppm/ppmtopcx.c
@@ -410,6 +410,9 @@ writeRaster16Color(FILE * const ofP,
--- netpbm-11.7.0.orig/converter/ppm/ppmtopcx.c
+++ netpbm-11.7.0/converter/ppm/ppmtopcx.c
@@ -409,6 +409,9 @@ writeRaster16Color(FILE * const ofP,
unsigned int row;
@ -577,10 +577,10 @@ Index: netpbm-11.5.2/converter/ppm/ppmtopcx.c
MALLOCARRAY_NOFAIL(indexRow, cols);
MALLOCARRAY(planesrow, bytesPerLine);
Index: netpbm-11.5.2/converter/ppm/ppmtopjxl.c
Index: netpbm-11.7.0/converter/ppm/ppmtopjxl.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/ppmtopjxl.c
+++ netpbm-11.5.2/converter/ppm/ppmtopjxl.c
--- netpbm-11.7.0.orig/converter/ppm/ppmtopjxl.c
+++ netpbm-11.7.0/converter/ppm/ppmtopjxl.c
@@ -535,6 +535,8 @@ main(int argc, const char * argv[]) {
pm_error("image too large; reduce with ppmscale");
if (maxval > PCL_MAXVAL)
@ -590,11 +590,11 @@ Index: netpbm-11.5.2/converter/ppm/ppmtopjxl.c
computeColormap(pixels, cols, rows, MAXCOLORS, &chv, &cht, &colorCt);
Index: netpbm-11.5.2/converter/ppm/ppmtowinicon.c
Index: netpbm-11.7.0/converter/ppm/ppmtowinicon.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/ppmtowinicon.c
+++ netpbm-11.5.2/converter/ppm/ppmtowinicon.c
@@ -13,6 +13,7 @@
--- netpbm-11.7.0.orig/converter/ppm/ppmtowinicon.c
+++ netpbm-11.7.0/converter/ppm/ppmtowinicon.c
@@ -14,6 +14,7 @@
#include <assert.h>
#include <math.h>
#include <string.h>
@ -602,7 +602,7 @@ Index: netpbm-11.5.2/converter/ppm/ppmtowinicon.c
#include "pm_c_util.h"
#include "winico.h"
@@ -208,6 +209,7 @@ newAndBitmap(gray ** const ba,
@@ -207,6 +208,7 @@ newAndBitmap(gray ** const ba,
MALLOCARRAY_NOFAIL(rowData, rows);
icBitmapP->xBytes = xByteCt;
icBitmapP->data = rowData;
@ -610,7 +610,7 @@ Index: netpbm-11.5.2/converter/ppm/ppmtowinicon.c
icBitmapP->size = xByteCt * rows;
for (row = 0; row < rows; ++row) {
u1 * thisRow; /* malloc'ed */
@@ -410,6 +412,7 @@ newBitmap(unsigned int const bpp,
@@ -416,6 +418,7 @@ newBitmap(unsigned int const bpp,
icBitmapP->xBytes = xByteCt;
icBitmapP->data = rowData;
@ -618,7 +618,7 @@ Index: netpbm-11.5.2/converter/ppm/ppmtowinicon.c
icBitmapP->size = xByteCt * rows;
unsigned int const assumedBpp = (pa == NULL) ? 1 : bpp;
@@ -700,6 +703,10 @@ addEntryToIcon(MS_Ico * const MSIcon
@@ -706,6 +709,10 @@ addEntryToIcon(MS_Ico * const MSIcon
/* all the icons I looked at ignored this value */
entryP->ih = newInfoHeader(*entryP);
entryP->colors = paletteP->colors;
@ -629,11 +629,11 @@ Index: netpbm-11.5.2/converter/ppm/ppmtowinicon.c
entryP->size_in_bytes =
xorBitmapP->size + andBitmapP->size + 40 + (4 * entryCols);
if (verbose)
Index: netpbm-11.5.2/converter/ppm/ppmtoxpm.c
Index: netpbm-11.7.0/converter/ppm/ppmtoxpm.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/ppmtoxpm.c
+++ netpbm-11.5.2/converter/ppm/ppmtoxpm.c
@@ -195,6 +195,7 @@ numstr(unsigned int const input,
--- netpbm-11.7.0.orig/converter/ppm/ppmtoxpm.c
+++ netpbm-11.7.0/converter/ppm/ppmtoxpm.c
@@ -193,6 +193,7 @@ numstr(unsigned int const input,
unsigned int i;
/* Allocate memory for printed number. Abort if error. */
@ -641,7 +641,7 @@ Index: netpbm-11.5.2/converter/ppm/ppmtoxpm.c
MALLOCARRAY_NOFAIL(str, digitCt + 1);
i = input; /* initial value */
@@ -310,6 +311,7 @@ genCmap(colorhist_vector const chv,
@@ -303,6 +304,7 @@ genCmap(colorhist_vector const chv,
unsigned int charsPerPixel;
unsigned int xpmMaxval;
@ -649,10 +649,10 @@ Index: netpbm-11.5.2/converter/ppm/ppmtoxpm.c
MALLOCARRAY(cmap, cmapSize);
if (cmapP == NULL)
pm_error("Can't get memory for a %u-entry color map", cmapSize);
Index: netpbm-11.5.2/converter/ppm/qrttoppm.c
Index: netpbm-11.7.0/converter/ppm/qrttoppm.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/qrttoppm.c
+++ netpbm-11.5.2/converter/ppm/qrttoppm.c
--- netpbm-11.7.0.orig/converter/ppm/qrttoppm.c
+++ netpbm-11.7.0/converter/ppm/qrttoppm.c
@@ -51,6 +51,7 @@ main(int argc, const char ** argv) {
pixelrow = ppm_allocrow(cols);
@ -661,10 +661,10 @@ Index: netpbm-11.5.2/converter/ppm/qrttoppm.c
MALLOCARRAY(buf, 3 * cols);
if (!buf)
Index: netpbm-11.5.2/converter/ppm/sldtoppm.c
Index: netpbm-11.7.0/converter/ppm/sldtoppm.c
===================================================================
--- netpbm-11.5.2.orig/converter/ppm/sldtoppm.c
+++ netpbm-11.5.2/converter/ppm/sldtoppm.c
--- netpbm-11.7.0.orig/converter/ppm/sldtoppm.c
+++ netpbm-11.7.0/converter/ppm/sldtoppm.c
@@ -542,6 +542,8 @@ slider(slvecfn slvec,
/* Allocate image buffer and clear it to black. */
@ -674,23 +674,23 @@ Index: netpbm-11.5.2/converter/ppm/sldtoppm.c
pixcols = ixdots + 1;
pixrows = iydots + 1;
pixels = ppm_allocarray(pixcols, pixrows);
Index: netpbm-11.5.2/editor/pamcut.c
Index: netpbm-11.7.0/editor/pamcut.c
===================================================================
--- netpbm-11.5.2.orig/editor/pamcut.c
+++ netpbm-11.5.2/editor/pamcut.c
@@ -799,6 +799,8 @@ cutOneImage(FILE * const ifP
--- netpbm-11.7.0.orig/editor/pamcut.c
+++ netpbm-11.7.0/editor/pamcut.c
@@ -833,6 +833,8 @@ cutOneImage(FILE * const ifP
} else {
outpam = inpam; /* Initial value -- most fields should be same */
outpam.file = ofP;
+ overflow_add(rightcol, 1);
+ overflow_add(bottomrow, 1);
outpam.width = rightcol - leftcol + 1;
outpam.height = bottomrow - toprow + 1;
outpam = inpam; /* Initial value -- most fields should be same */
outpam.file = ofP;
+ overflow_add(rightcol, 1);
+ overflow_add(bottomrow, 1);
outpam.width = rightcol - leftcol + 1;
outpam.height = bottomrow - toprow + 1;
Index: netpbm-11.5.2/editor/pbmreduce.c
Index: netpbm-11.7.0/editor/pbmreduce.c
===================================================================
--- netpbm-11.5.2.orig/editor/pbmreduce.c
+++ netpbm-11.5.2/editor/pbmreduce.c
--- netpbm-11.7.0.orig/editor/pbmreduce.c
+++ netpbm-11.7.0/editor/pbmreduce.c
@@ -153,6 +153,7 @@ initializeFloydSteinberg(struct FS * co
unsigned int col;
struct pm_randSt randSt;
@ -699,10 +699,10 @@ Index: netpbm-11.5.2/editor/pbmreduce.c
MALLOCARRAY(fsP->thiserr, newcols + 2);
MALLOCARRAY(fsP->nexterr, newcols + 2);
Index: netpbm-11.5.2/editor/pnmgamma.c
Index: netpbm-11.7.0/editor/pnmgamma.c
===================================================================
--- netpbm-11.5.2.orig/editor/pnmgamma.c
+++ netpbm-11.5.2/editor/pnmgamma.c
--- netpbm-11.7.0.orig/editor/pnmgamma.c
+++ netpbm-11.7.0/editor/pnmgamma.c
@@ -596,6 +596,7 @@ createGammaTables(enum transferFunction
xelval ** const btableP) {
@ -711,10 +711,10 @@ Index: netpbm-11.5.2/editor/pnmgamma.c
MALLOCARRAY(*rtableP, maxval+1);
MALLOCARRAY(*gtableP, maxval+1);
MALLOCARRAY(*btableP, maxval+1);
Index: netpbm-11.5.2/editor/pnmhisteq.c
Index: netpbm-11.7.0/editor/pnmhisteq.c
===================================================================
--- netpbm-11.5.2.orig/editor/pnmhisteq.c
+++ netpbm-11.5.2/editor/pnmhisteq.c
--- netpbm-11.7.0.orig/editor/pnmhisteq.c
+++ netpbm-11.7.0/editor/pnmhisteq.c
@@ -106,6 +106,7 @@ computeLuminosityHistogram(xel * const *
unsigned int pixelCount;
unsigned int * lumahist;
@ -723,10 +723,10 @@ Index: netpbm-11.5.2/editor/pnmhisteq.c
MALLOCARRAY(lumahist, maxval + 1);
if (lumahist == NULL)
pm_error("Out of storage allocating array for %u histogram elements",
Index: netpbm-11.5.2/editor/pnmpad.c
Index: netpbm-11.7.0/editor/pnmpad.c
===================================================================
--- netpbm-11.5.2.orig/editor/pnmpad.c
+++ netpbm-11.5.2/editor/pnmpad.c
--- netpbm-11.7.0.orig/editor/pnmpad.c
+++ netpbm-11.7.0/editor/pnmpad.c
@@ -1127,6 +1127,8 @@ main(int argc, const char ** argv) {
computePadSizes(cmdline, cols, rows, &lpad, &rpad, &tpad, &bpad);
@ -736,10 +736,10 @@ Index: netpbm-11.5.2/editor/pnmpad.c
newcols = cols + lpad + rpad;
if (cmdline.reportonly)
Index: netpbm-11.5.2/editor/pnmremap.c
Index: netpbm-11.7.0/editor/pnmremap.c
===================================================================
--- netpbm-11.5.2.orig/editor/pnmremap.c
+++ netpbm-11.5.2/editor/pnmremap.c
--- netpbm-11.7.0.orig/editor/pnmremap.c
+++ netpbm-11.7.0/editor/pnmremap.c
@@ -469,6 +469,7 @@ fserr_init(struct pam * const pamP,
unsigned int plane;
@ -756,10 +756,10 @@ Index: netpbm-11.5.2/editor/pnmremap.c
for (col = 0; col < pamP->width + 2; ++col) {
unsigned int plane;
for (plane = 0; plane < pamP->depth; ++plane)
Index: netpbm-11.5.2/editor/pnmshear.c
Index: netpbm-11.7.0/editor/pnmshear.c
===================================================================
--- netpbm-11.5.2.orig/editor/pnmshear.c
+++ netpbm-11.5.2/editor/pnmshear.c
--- netpbm-11.7.0.orig/editor/pnmshear.c
+++ netpbm-11.7.0/editor/pnmshear.c
@@ -15,6 +15,7 @@
#include <assert.h>
#include <math.h>
@ -780,10 +780,10 @@ Index: netpbm-11.5.2/editor/pnmshear.c
newcolsD = (double) rows * fabs(shearfac) + cols + 0.999999;
if (newcolsD > INT_MAX-2)
pm_error("angle is too close to +/-90 degrees; "
Index: netpbm-11.5.2/editor/specialty/pamoil.c
Index: netpbm-11.7.0/editor/specialty/pamoil.c
===================================================================
--- netpbm-11.5.2.orig/editor/specialty/pamoil.c
+++ netpbm-11.5.2/editor/specialty/pamoil.c
--- netpbm-11.7.0.orig/editor/specialty/pamoil.c
+++ netpbm-11.7.0/editor/specialty/pamoil.c
@@ -185,6 +185,7 @@ main(int argc, const char ** argv) {
tuples = pnm_readpam(ifP, &inpam, PAM_STRUCT_SIZE(tuple_type));
@ -792,10 +792,10 @@ Index: netpbm-11.5.2/editor/specialty/pamoil.c
MALLOCARRAY(hist, inpam.maxval + 1);
if (hist == NULL)
pm_error("Unable to allocate memory for histogram.");
Index: netpbm-11.5.2/generator/pbmtext.c
Index: netpbm-11.7.0/generator/pbmtext.c
===================================================================
--- netpbm-11.5.2.orig/generator/pbmtext.c
+++ netpbm-11.5.2/generator/pbmtext.c
--- netpbm-11.7.0.orig/generator/pbmtext.c
+++ netpbm-11.7.0/generator/pbmtext.c
@@ -1193,6 +1193,7 @@ computeMargins(struct CmdlineInfo const
*hmarginP = fontP->maxwidth;
} else {
@ -804,10 +804,10 @@ Index: netpbm-11.5.2/generator/pbmtext.c
*hmarginP = 2 * fontP->maxwidth;
}
}
Index: netpbm-11.5.2/generator/pgmkernel.c
Index: netpbm-11.7.0/generator/pgmkernel.c
===================================================================
--- netpbm-11.5.2.orig/generator/pgmkernel.c
+++ netpbm-11.5.2/generator/pgmkernel.c
--- netpbm-11.7.0.orig/generator/pgmkernel.c
+++ netpbm-11.7.0/generator/pgmkernel.c
@@ -224,6 +224,7 @@ main(int argc, const char * argv[]) {
/* Output matrix is symmetric vertically and horizontally. */
@ -816,10 +816,10 @@ Index: netpbm-11.5.2/generator/pgmkernel.c
arows = (cmdline.rows + 1) / 2;
/* Half the number of rows. Add 1 if odd. */
halfKernel = pgm_allocarray(cmdline.cols, arows);
Index: netpbm-11.5.2/lib/libpammap.c
Index: netpbm-11.7.0/lib/libpammap.c
===================================================================
--- netpbm-11.5.2.orig/lib/libpammap.c
+++ netpbm-11.5.2/lib/libpammap.c
--- netpbm-11.7.0.orig/lib/libpammap.c
+++ netpbm-11.7.0/lib/libpammap.c
@@ -111,6 +111,8 @@ allocTupleIntListItem(struct pam * const
if (pamP->depth > (UINT_MAX - sizeof(*retval)) / sizeof(sample))
pm_error("Depth %u is too large for computation", pamP->depth);
@ -829,10 +829,10 @@ Index: netpbm-11.5.2/lib/libpammap.c
unsigned int const size =
sizeof(*retval) - sizeof(retval->tupleint.tuple)
+ pamP->depth * sizeof(sample);
Index: netpbm-11.5.2/lib/libpbm1.c
Index: netpbm-11.7.0/lib/libpbm1.c
===================================================================
--- netpbm-11.5.2.orig/lib/libpbm1.c
+++ netpbm-11.5.2/lib/libpbm1.c
--- netpbm-11.7.0.orig/lib/libpbm1.c
+++ netpbm-11.7.0/lib/libpbm1.c
@@ -80,6 +80,7 @@ pbm_check(FILE * const fil
} else {
pm_filepos const bytesPerRow = (cols+7)/8;
@ -841,11 +841,11 @@ Index: netpbm-11.5.2/lib/libpbm1.c
pm_check(fileP, checkType, needRasterSize, retvalP);
}
}
Index: netpbm-11.5.2/lib/libpm.c
Index: netpbm-11.7.0/lib/libpm.c
===================================================================
--- netpbm-11.5.2.orig/lib/libpm.c
+++ netpbm-11.5.2/lib/libpm.c
@@ -904,6 +904,55 @@ pm_parse_height(const char * const arg)
--- netpbm-11.7.0.orig/lib/libpm.c
+++ netpbm-11.7.0/lib/libpm.c
@@ -913,6 +913,55 @@ pm_parse_height(const char * const arg)
return height;
}
@ -901,10 +901,10 @@ Index: netpbm-11.5.2/lib/libpm.c
unsigned int
Index: netpbm-11.5.2/lib/pm.h
Index: netpbm-11.7.0/lib/pm.h
===================================================================
--- netpbm-11.5.2.orig/lib/pm.h
+++ netpbm-11.5.2/lib/pm.h
--- netpbm-11.7.0.orig/lib/pm.h
+++ netpbm-11.7.0/lib/pm.h
@@ -466,4 +466,11 @@ pm_parse_maxval(const char * const arg);
#endif
@ -917,11 +917,11 @@ Index: netpbm-11.5.2/lib/pm.h
+void overflow_add(int, int);
+
#endif
Index: netpbm-11.5.2/other/pnmcolormap.c
Index: netpbm-11.7.0/other/pnmcolormap.c
===================================================================
--- netpbm-11.5.2.orig/other/pnmcolormap.c
+++ netpbm-11.5.2/other/pnmcolormap.c
@@ -1134,6 +1134,7 @@ colormapToSquare(struct pam * const pamP
--- netpbm-11.7.0.orig/other/pnmcolormap.c
+++ netpbm-11.7.0/other/pnmcolormap.c
@@ -1132,6 +1132,7 @@ colormapToSquare(struct pam * const pamP
pamP->width = intsqrt;
else
pamP->width = intsqrt + 1;
@ -929,10 +929,10 @@ Index: netpbm-11.5.2/other/pnmcolormap.c
}
{
unsigned int const intQuotient = colormap.size / pamP->width;
Index: netpbm-11.5.2/urt/rle_addhist.c
Index: netpbm-11.7.0/urt/rle_addhist.c
===================================================================
--- netpbm-11.5.2.orig/urt/rle_addhist.c
+++ netpbm-11.5.2/urt/rle_addhist.c
--- netpbm-11.7.0.orig/urt/rle_addhist.c
+++ netpbm-11.7.0/urt/rle_addhist.c
@@ -14,6 +14,8 @@
* If you modify this software, you should include a notice giving the
* name of the person performing the modification, the date of modification,
@ -965,10 +965,10 @@ Index: netpbm-11.5.2/urt/rle_addhist.c
++length; /* Add size of terminating NUL. */
return length;
Index: netpbm-11.5.2/urt/rle_getrow.c
Index: netpbm-11.7.0/urt/rle_getrow.c
===================================================================
--- netpbm-11.5.2.orig/urt/rle_getrow.c
+++ netpbm-11.5.2/urt/rle_getrow.c
--- netpbm-11.7.0.orig/urt/rle_getrow.c
+++ netpbm-11.7.0/urt/rle_getrow.c
@@ -17,6 +17,8 @@
*
* Modified at BRL 16-May-88 by Mike Muuss to avoid Alliant STDC desire
@ -986,10 +986,10 @@ Index: netpbm-11.5.2/urt/rle_getrow.c
MALLOCARRAY(commentHeap, evenlen);
if (commentHeap == NULL) {
Index: netpbm-11.5.2/urt/rle_hdr.c
Index: netpbm-11.7.0/urt/rle_hdr.c
===================================================================
--- netpbm-11.5.2.orig/urt/rle_hdr.c
+++ netpbm-11.5.2/urt/rle_hdr.c
--- netpbm-11.7.0.orig/urt/rle_hdr.c
+++ netpbm-11.7.0/urt/rle_hdr.c
@@ -14,6 +14,8 @@
* If you modify this software, you should include a notice giving the
* name of the person performing the modification, the date of modification,
@ -1025,10 +1025,10 @@ Index: netpbm-11.5.2/urt/rle_hdr.c
size *= sizeof(char *);
toHdrP->comments = malloc(size);
if (!toHdrP->comments)
Index: netpbm-11.5.2/urt/rle.h
Index: netpbm-11.7.0/urt/rle.h
===================================================================
--- netpbm-11.5.2.orig/urt/rle.h
+++ netpbm-11.5.2/urt/rle.h
--- netpbm-11.7.0.orig/urt/rle.h
+++ netpbm-11.7.0/urt/rle.h
@@ -14,6 +14,9 @@
* If you modify this software, you should include a notice giving the
* name of the person performing the modification, the date of modification,
@ -1057,10 +1057,10 @@ Index: netpbm-11.5.2/urt/rle.h
/* Declare RLE library routines. */
Index: netpbm-11.5.2/urt/rle_open_f.c
Index: netpbm-11.7.0/urt/rle_open_f.c
===================================================================
--- netpbm-11.5.2.orig/urt/rle_open_f.c
+++ netpbm-11.5.2/urt/rle_open_f.c
--- netpbm-11.7.0.orig/urt/rle_open_f.c
+++ netpbm-11.7.0/urt/rle_open_f.c
@@ -163,65 +163,7 @@ dealWithSubprocess(const char * const f
FILE ** const fpP,
bool * const noSubprocessP,
@ -1127,10 +1127,10 @@ Index: netpbm-11.5.2/urt/rle_open_f.c
}
Index: netpbm-11.5.2/urt/rle_putcom.c
Index: netpbm-11.7.0/urt/rle_putcom.c
===================================================================
--- netpbm-11.5.2.orig/urt/rle_putcom.c
+++ netpbm-11.5.2/urt/rle_putcom.c
--- netpbm-11.7.0.orig/urt/rle_putcom.c
+++ netpbm-11.7.0/urt/rle_putcom.c
@@ -14,6 +14,8 @@
* If you modify this software, you should include a notice giving the
* name of the person performing the modification, the date of modification,
@ -1140,10 +1140,10 @@ Index: netpbm-11.5.2/urt/rle_putcom.c
*/
/*
* rle_putcom.c - Add a picture comment to the header struct.
Index: netpbm-11.5.2/urt/Runput.c
Index: netpbm-11.7.0/urt/Runput.c
===================================================================
--- netpbm-11.5.2.orig/urt/Runput.c
+++ netpbm-11.5.2/urt/Runput.c
--- netpbm-11.7.0.orig/urt/Runput.c
+++ netpbm-11.7.0/urt/Runput.c
@@ -17,6 +17,8 @@
*
* Modified at BRL 16-May-88 by Mike Muuss to avoid Alliant STDC desire
@ -1171,10 +1171,10 @@ Index: netpbm-11.5.2/urt/Runput.c
if (!h_cmap) {
pm_error("Failed to allocate memory for color map of size %u, "
Index: netpbm-11.5.2/lib/libpam.c
Index: netpbm-11.7.0/lib/libpam.c
===================================================================
--- netpbm-11.5.2.orig/lib/libpam.c
+++ netpbm-11.5.2/lib/libpam.c
--- netpbm-11.7.0.orig/lib/libpam.c
+++ netpbm-11.7.0/lib/libpam.c
@@ -258,7 +258,8 @@ allocPamRow(const struct pam * const pam
unsigned int const bytesPerTuple = allocationDepth(pamP) * sizeof(sample);
tuple * tuplerow;

View File

@ -1,8 +1,48 @@
-------------------------------------------------------------------
Fri Jul 12 10:35:11 UTC 2024 - pgajdos@suse.com
Fri Jul 12 10:29:32 UTC 2024 - pgajdos@suse.com
- fix CVE-2024-38526 [bsc#1227693] Polyfill Supplay Chain Attack
-------------------------------------------------------------------
Fri Jul 12 09:55:14 UTC 2024 - pgajdos@suse.com
- version update to 11.7.0
* Release 11.07.00
+ libnetpbm: Fix double free crash when memory allocation via
REALLOCARRAY fails. Introduced in Netpbm 10.40 (September
2007).
+ libnetpbm: Allow color dictionary with more than 1000 entries.
+ ppmhist, ppmtoxpm: Work with color dictionary with more than
1000 color entries.
+ rgb.txt: Add Resene paint colors, 2010.
* Release 11.06.00
+ pamcut: add -reportonly.
+ infotopam: Add input validation.
+ infotopam: Remove input file name from messages. Add -verbose
and issue informational message only if it is specified.
+ libnetpbm: Don't ignore garbage at the end of a color specifier
(e.g. rgbi:0/.5/1xyz).
+ color database: change names of "Spring Green", "Lamp Black",
and "light grey" to "SpringGreen", "LampBlack", and "LightGrey"
to be consistent with other color names.
+ pamcut: fix incorrect output when rectangle to cut is entirely
above the input image. Invisible junk after image. Always
broken. (The ability to cut outside the input image was new in
pamcut's predecessor pnmcut in Netpbm 9.7 (August 2000).
+ pamcut: fix incorrect output with PBM input when rectangle to
cut is entirely below the input image. Invisible junk after
image. Broken in Netpbm 10.44 (September 2008).
+ ppmtowinicon: fix array overrun with 4 and 8 bits per pixel.
Broken in Netpbm 11.05 (December 2023).
+ infotopam: fix incorrect output -- columns always in wrong
place. Always broken. (infotopam was new in Netpbm 10.22 (May
2004)).
+ pamseq: fix typo in error message.
+ build: makeman: fix warning about backslashes in strings.
- modified patches
% netpbm-gcc-warnings.patch (refreshed)
% netpbm-security-code.patch (refreshed)
-------------------------------------------------------------------
Fri Feb 2 14:11:02 UTC 2024 - pgajdos@suse.com

View File

@ -20,10 +20,10 @@
%define asan_build 0
%define ubsan_build 0
%define libmaj 11
%define libmin 105
%define libmin 107
%define libver %{libmaj}.%{libmin}
Name: netpbm
Version: 11.5.2
Version: 11.7.0
Release: 0
Summary: A Graphics Conversion Package
License: BSD-3-Clause AND GPL-2.0-or-later AND IJG AND MIT AND SUSE-Public-Domain
@ -148,6 +148,10 @@ rm %{buildroot}%{_bindir}/pstopnm # disable due security reasons, e. g. [bsc#110
%postun -n libnetpbm%{libmaj} -p /sbin/ldconfig
%check
# HOWTO run tests manually:
# $ LD_LIBRARY_PATH=lib PATH=package/bin pamtowinicon -pngthreshold=1 package-test-tmp/testimg1.pam
# pamtowinicon: bad magic number 0xf0f - not a PAM, PPM, PGM, or PBM file
# $
%if %{asan_build}
export LSAN_OPTIONS="detect_leaks=0"
%endif
@ -162,14 +166,19 @@ sed -i '/pict-roundtrip/d' test/Test-Order
sed -i '/stdin-ppm3.test/d' test/Test-Order
# pstopnm is not shipped
sed -i '/^l\?ps.*\.test/d' test/Test-Order
# new winicon-roundtrip2.test failure reported to bryanh@giraffe-data.com on 2020-12-29
# $ LD_LIBRARY_PATH=lib PATH=package/bin pamtowinicon -pngthreshold=1 package-test-tmp/testimg1.pam
# pamtowinicon: bad magic number 0xf0f - not a PAM, PPM, PGM, or PBM file
# $
sed -i '/winicon-roundtrip2.test/d' test/Test-Order
# Unable to exec 'gs'
sed -i '/pbmtextps.test/d' test/Test-Order
sed -i '/stdin-pnm2.test/d' test/Test-Order
# reported to bryanh@giraffe-data.com on 2024-07-12
# == xpm-roundtrip.test ==
# ppmtoxpm: (Computing colormap...
# ppmtoxpm: ...Done. 20314 colors found.)
# ppmtoxpm: (Computing colormap...
# ppmtoxpm: ...Done. 2 colors found.)
# xpmtoppm: EOF or read error on input file
# pgmtopbm: Error reading first byte of what is expected to be a Netpbm magic number. Most often, this means your input file is empty
# xpm-roundtrip.test: FAILURE
sed -i '/xpm-roundtrip.test/d' test/Test-Order
mkdir package-test-{tmp,results}
make pkgdir=`pwd`/package tmpdir=`pwd`/package-test-tmp RESULTDIR=`pwd`/package-test-results check-package