SHA256
1
0
forked from pool/netpbm
netpbm/netpbm-libpng14.patch

116 lines
4.8 KiB
Diff
Raw Normal View History

Index: netpbm-10.35.80/converter/other/pngtopnm.c
===================================================================
--- netpbm-10.35.80.orig/converter/other/pngtopnm.c
+++ netpbm-10.35.80/converter/other/pngtopnm.c
@@ -44,12 +44,6 @@
#include "nstring.h"
#include "shhopt.h"
-#if PNG_LIBPNG_VER >= 10400
-#error Your PNG library (<png.h>) is incompatible with this Netpbm source code.
-#error You need either an older PNG library (older than 1.4)
-#error newer Netpbm source code (at least 10.48)
-#endif
-
typedef struct _jmpbuf_wrapper {
jmp_buf jmpbuf;
} jmpbuf_wrapper;
@@ -482,7 +476,7 @@ isTransparentColor(pngcolor const colo
bool retval;
if (info_ptr->valid & PNG_INFO_tRNS) {
- const png_color_16 * const transColorP = &info_ptr->trans_values;
+ const png_color_16 * const transColorP = &info_ptr->trans_color;
/* There seems to be a problem here: you can't compare real
@@ -575,8 +569,8 @@ paletteHasPartialTransparency(png_info *
for (i = 0, foundGray = FALSE;
i < info_ptr->num_trans && !foundGray;
++i) {
- if (info_ptr->trans[i] != 0 &&
- info_ptr->trans[i] != maxval) {
+ if (info_ptr->trans_alpha[i] != 0 &&
+ info_ptr->trans_alpha[i] != maxval) {
foundGray = TRUE;
}
}
@@ -647,7 +641,7 @@ setupSignificantBits(png_struct *
unsigned int i;
trans_mix = TRUE;
for (i = 0; i < info_ptr->num_trans; ++i)
- if (info_ptr->trans[i] != 0 && info_ptr->trans[i] != 255) {
+ if (info_ptr->trans_alpha[i] != 0 && info_ptr->trans_alpha[i] != 255) {
trans_mix = FALSE;
break;
}
@@ -885,7 +879,7 @@ writePnm(FILE * const ofP,
setXel(&xelrow[col], fgColor, bgColor, alpha_handling,
((info_ptr->valid & PNG_INFO_tRNS) &&
(fgColor.r ==
- gamma_correct(info_ptr->trans_values.gray,
+ gamma_correct(info_ptr->trans_color.gray,
totalgamma))) ?
0 : maxval);
}
@@ -914,7 +908,7 @@ writePnm(FILE * const ofP,
setXel(&xelrow[col], fgColor, bgColor, alpha_handling,
(info_ptr->valid & PNG_INFO_tRNS) &&
index < info_ptr->num_trans ?
- info_ptr->trans[index] : maxval);
+ info_ptr->trans_alpha[index] : maxval);
}
break;
Index: netpbm-10.35.80/converter/other/pnmtopng.c
===================================================================
--- netpbm-10.35.80.orig/converter/other/pnmtopng.c
+++ netpbm-10.35.80/converter/other/pnmtopng.c
@@ -69,13 +69,6 @@
#include "nstring.h"
#include "version.h"
-#if PNG_LIBPNG_VER >= 10400
-#error Your PNG library (<png.h>) is incompatible with this Netpbm source code.
-#error You need either an older PNG library (older than 1.4)
-#error newer Netpbm source code (at least 10.47.04)
-#endif
-
-
struct zlibCompression {
/* These are parameters that describe a form of zlib compression.
Values have the same meaning as the similarly named arguments to
@@ -2612,7 +2605,7 @@ convertpnm(struct cmdlineInfo const cmdl
info_ptr->num_palette = palette_size;
if (trans_size > 0) {
info_ptr->valid |= PNG_INFO_tRNS;
- info_ptr->trans = trans;
+ info_ptr->trans_alpha = trans;
info_ptr->num_trans = trans_size; /* omit opaque values */
}
/* creating hIST chunk */
@@ -2649,7 +2642,7 @@ convertpnm(struct cmdlineInfo const cmdl
info_ptr->color_type == PNG_COLOR_TYPE_RGB) {
if (transparent > 0) {
info_ptr->valid |= PNG_INFO_tRNS;
- info_ptr->trans_values =
+ info_ptr->trans_color =
xelToPngColor_16(transcolor, maxval, png_maxval);
}
} else {
@@ -2661,10 +2654,10 @@ convertpnm(struct cmdlineInfo const cmdl
if (info_ptr->valid && PNG_INFO_tRNS)
pm_message("Transparent color {gray, red, green, blue} = "
"{%d, %d, %d, %d}",
- info_ptr->trans_values.gray,
- info_ptr->trans_values.red,
- info_ptr->trans_values.green,
- info_ptr->trans_values.blue);
+ info_ptr->trans_color.gray,
+ info_ptr->trans_color.red,
+ info_ptr->trans_color.green,
+ info_ptr->trans_color.blue);
else
pm_message("No transparent color");
}