Updated netpbm to 10.77.02.
17.01.24 Release 10.77.02
tifftopnm: Fix memory corruption when image is more pixels
than can be represented as a C unsigned integer. Broken in
Netpbm 10.11 (October 2002).
17.01.11 BJH Release 10.77.01
svgtopam: Fix crash when out of memory. Always broken
(svgtopam was new in Netpbm 10.33 (March 2006)).
16.12.25 BJH Release 10.77.00
pnmpad: fix bug: incorrect output width. Introduced in
Netpbm 10.72 (July 2015).
Makeman: slight improvement to formatting of man pages.
Thanks Werner LEMBERG <firstname.lastname@example.org>.
Test: skip tests of some parts that are configured out of the
16.09.27 BJH Release 10.76.00
pnmquantall: Fix failure when temporary file location is
not the same filesystem as the output file.
pnmquantall: Fix incorrect handling of when the Pnmremap or
the final rename fails.
giftopnm: Fix bug: crash on little-endian computers that can't
toleration unaligned memory access. Thanks Ignatios Souvatzis
(email@example.com). Broken in Netpbm 10.47 (June 2009).
cmuwmtopbm: fix trivial memory leak. Always broken (cmuwmtopbm
was in primordial Pbmplus, in 1988).
Build: Add PKG_CONFIG make variable.
Build: tifftopnm.c: fix undefined WIFSIGNALED, etc. in
16.06.26 BJH Release 10.75.00
pbmtextps: Add -leftmargin, -rightmargin, -topmargin,
-bottommargin, -ascent, -descent, -pad, -crop.
pbmtextps: Add -dump-ps.
pbmtextps: Abort with error instead of generating single space
when user supplies no text.
pbmtextps: Accept fractional -fontsize.
pbmtextps: Change margins for non-default fonts.
pbmtextps: Minor output changes caused by code cleanup.
bmptopnm: Add ability to convert Version 4 and 5 Windows BMP.
pbmtext: remove undocumented -dump option; add 'genfontc'
development tool (buildtools/ directory) to replace it.
pbmtext: Add -dry-run
pbmtext: Add -dump-sheet
pbmtext: Speedup: renders directly in raw PBM.
pbmreduce: add -randomseed.
anytopnm, pnmmargin, pnmquant, ppmquant, pnmquantall, pgmcrater,
ppmfade, ppmrainbow, ppmshadow, pbmtox10bm, pamstretch-gen:
fiascotopnm: change -version to include Netpbm version.
libnetpbm: Add pm_system2(), pm_system2_lp(), pm_system2_vp() -
same as pm_system(), etc. but returns the termination status.
pamarith: fix incorrect output when maxvals differ, for
-add, -multiply, -mean, -min, -max. Broken in Netpbm 10.41
pbmtextps: Fix bug: input text or font name with Postscript
control characters messes up the Postscript program.
hpcdtoppm dummy version: update web link to real version.
ppmhist: fix incorrect color names. Introduced in
Netpbm 10.19 (November 2003).
ppmshadow: fix bug: don't ignore invalid option. Introduced in
Netpbm 10.9 (September 2002).
pnmpaste: fix possible invalid memory access. Introduced in
Netpbm 1.44 (September 2008).
pbmreduce: fix undefined behavior when scale factor argument is
too big. Always present (pbmreduce was new in September 1989).
pbmtext: Fix bug: invalid memory reference when text contains
code points > 127. Broken in 10.74.
pnmtofiasco, fiascotopnm: Fix incorrect math on systems with
unusual floating point representation. Always broken (programs
were new in Netpbm 9.6 (July 2000).
cameratopam: fix invalid memory reference; effect unknown.
Introduced in Netpbm 10.68 (September 2014).
Install on Windows: fix backward compatibility symlinks for
Build: Remove use of strndup so it compiles on Mac OS X 10.6.
Broken in 10.74.
Build: Remove use of isfinite so it compiles with C89 standard
16.03.27 BJH Release 10.74.00
pbmtext: produce same image when you run pbmtext with -width
explicitly set to the width you get when you don't specify
pbmtext: ignore -nomargins when -width is specified.
pbmtext: report when line ends are dropped because of
pbmtext: Fix bug: if input has a code point that is not in the
font, Pbmtext substitutes space, but behavior is undefined if
font doesn't have space either. Now it aborts the program in
pbmtext: fix bug: Respect -width when specified.
pbmtext: fix bug: Deal correctly with negative -space.
pbmtext: fix bug: Consider all characters in line, not just
first and last, in determining line width.
libnetbpm font facility (so pbmtext): fix bug: undefined
behavior when font definitions are invalid in any of various
libnetpbm font facility (so pbmtext): fix incorrect font names
in error messages.
pnmtopsnr: Add -machine, -max .
Netpbmlib: add /usr/local/netpbm/lib and /etc/X11 to search
path for rgb.txt.
makeman: Add some text replacements to solve glitches.
Handle &mdash, &minus.
15.12.26 BJH Release 10.73.00
anytopnm: use --mime-type option instead of --mime on newer
'file' program (on which --mime has a new meaning so that
'anytopnm' cannot recognize some file types).
anytopnm: recognize "Netpbm PAM" non-mime output from 'file'
program as indicating PAM.
pnmtops: fix bug: always thinks -level=N is -level=1.
Introduced after Netpbm 10.26 (January 2005) but before 10.35
(August 2006). Manifests only with recent compilers.
pnmpaste: fix bug with PBM: incorrect output. Introduced in
Netpbm 10.44 (September 2008).
Build: fix undefined reference to parse_printf_format etc. on
system that doesn't have that facility. Broken in Netpbm 10.69
Build: fix superfluous error message when USER environment
variable contains whitespace. Broken since primordial Netpbm.
Windows build: fix bug: make clean doesn't clean icon/netpbm.o.
Broken since Netpbm 10.67 (June 2014).
Test: improved pnmpaste test.
15.09.26 BJH Release 10.72.00
Add pamunlookup .
pamtopng: Implement -itxt .
pamlookup: Add -byplane .
pbmtoescp2: Add -stripeheight .
phmtoescp2: Add -resolution .
pbmtoescp2: Add -formfeed .
pbmtoescp2: Add -raw .
pbmtoescp2: Add -resolution=720 .
pbmtoescp2: Pad output horizontally to a multiple of 8 columns
and vertically to a whole stripe to prevent image loss.
fitstopnm: Add message saying you're probably making a mistake
if you have a 3-D image and don't specify -image. The third
dimension is almost always time in practice.
fitstopnm: Fix -min and -max. Broken in Netpbm 10.39 (June
pnmtopclxl: fix buffer overrun causing unpredictable behavior.
(Introduced in Netpbm 10.54 (March 2011).
pnmtopclxl: fix wild memory access when out of memory. Always
broken (Pnmtopclxl was new in Netpbm 10.6 (July 2002)).
pnmtopclxl: fix wild memory access with pathologically large and
uncompressible image. Always broken (Pnmtopclxl was new in
Netpbm 10.6 (July 2002)).
pnmtopclxl: fix silent output corruption when a file write
fails. Always broken (Pnmtopclxl was new in Netpbm 10.6 (July
escp2topbm: Fix -plain. Always broken (escp2topbm was new in
Netpbm 10.18 (September 2003)).
pnmpad: Add -mheight, -mwidth.
ppmtoilbm: Fix failure with -hamforce and -nocompression.
Broken in Netpbm 9.12 (March 2001).
makeman: fix Python syntax error. Introduced in Netpbm 10.70
15.06.28 BJH Release 10.71.00
Add pamtopng. Thanks Willem vanSchaik (firstname.lastname@example.org).
pnmtopng: Add -srgbintent.
pamstereogram: Add -xbegin. Change default to render from
center outwards intead of from right to left, thus making the
center of the image the crispest part. Thanks Scott Pakin
pamstereogram: Allow -xshift and -yshift to be negative. Thanks
Scott Pakin (email@example.com).
pnmpsnr: Add -rgb.
ppmtoicr: remove -rle option. Actually, it never worked
because of a bug. Now it isn't expected to. Ppmtoicr was
new in 1991.
pnmtopalm: Fix arithmetic overflow with ridiculously large
image. Introduced after Netpbm 10.26 (January 2005) but before
Netpbm 10.35 (August 2006).
palmtopnm: Fix distorted output with PackBits compressed input.
Always broken (Ability to convert PackBits input was new in
Netpbm 10.27 (March 2005).
pbmtoepson: fix -protocol option - never works and sometimes
crashes program. Always broken (-protocol was new in Netpbm
10.23 (July 2004).
pbmtoppa: fix buffer overruns, double-free crashes. Always
broken (pbmtoppa was new in Netpbm 9.1 (March 2000).
pbmtomatrixorbital: fix bug: fails if you specify the input
file name argument. Always broken. (pbmtomatrixorbital was
new in Netpbm 10.18 (Setpember 2003).
sbigtopgm: fix detection of camera type. Always broken
(sbigtopgm was new in Netpbm 8.3 (March 2000)).
sbigtopgm: fix recognition of compressed image. Broken in
Netpbm 10.70 (March 2015).
pbmtogo: Fix bug: garbage first row. Broken at least since
pbmtogo: Fix bug: buffer overrun with certain input. Broken
at least since November 1989.
pbmtoescp2: Fix bug: overrun on certain input. Always broken
(pbmtoescp2 was new in Netpbm 10.18 (September 2003)).
escp2topbm: Fix buffer overrun on certain input. Always broken
(escp2topbm was new in Netpbm 10.18 (September 2003)).
libnetpbm: pm_stripeq: fix bug: wild pointer access when
comparator is shorter than comparand. Doesn't affect function,
but could cause crash or privacy exposure. Affects reading of a
PAM file by any program. Introduced in one of Netpbm 10.27
(March 2005) through 10.35 (August 2006).
pnmconvol: Fix bug: wrong output for pixels that convolve to
negative values (should be clipped to zero). Introduced in
Netpbm 10.68 (September 2014).
pbmtog3: Fix buffer overrun. Introduced in Netpbm 10.23
cameratopam: Fix arithmetic underflow in JPEG processing;
pbmtoxbm: Fix bug: crash with zero width input. Broken in
Netpbm 10.37 (December 2006).
sbigtopgm: fix buffer overrun with invalid input image. Always
present (sbigtopgm was new in Netpbm 8.3 (March 2000)).
pnmtorle: Fix buffer overrun with long file name. Always
present. (pnmtorle was new to Netpbm in Netpbm 9.0 (April
pbmtopk: Fix buffer overrun with long file name. Always
present. (pbmtopk was new in Netpbm 1 (March 1991)).
pktopbm: Fix buffer overrun with long file name. Always
present. (pbmtopk was new in Netpbm 1 (March 1991)).
ppmtoyuvsplit: Fix buffer overrun with long file name. Always
present. (New in Netpbm 1 (March 1991)).
pbmtopi3: Fix bug: wrong output when input is higher or wider
than 640 pixels. Always broken (pbmtopi3 was new in September
st4topgm: Fix bug: with no argument, uses file named "'" \
of Standard Input. Always present (st45topgm was new in Netpbm
10.70 (March 2015).
pbmtomgr: Fix incorrect output when input is too large (must be
at most 4095 pixels high or wide). Always broken. (pbmtomgr
was new in 1989).
pbmtomacp: fix wild pointer dereference with -b larger than
image height. Always broken. (pbmtomacp was new in X.V11R3
ppmtorgb3: Fix buffer overflow with long input file name.
Always present. (ppmtorgb3 was new in X.V11R4 (November 1989).
ppmtoarbtxt: fix bug: wrong output when high numbers represent
darker. Broken in Netpbm 10.69 (November 2014).
ppmtoarbtxt: better rounding in sample values.
libnetpbm: Remove bitio.h as an external interface.
test: replace some GNU-only code with more portable code that
works on OS X. Thanks Ryan Schmidt <firstname.lastname@example.org>.
makeman: deal properly with backlash in source. But something
was wrong with this change and it caused the program always to
fail, so we reversed this change in 10.72.
Build: don't build and install libjbig and libjasper if we
are using external versions of them instead.
Build: various cross-compile fixes, especially for MinGW.
Build: work around bug in GCC < 4.2 related to SSE2 builtins
that causes compile of pamflip to fail.
Build: fix 'make package' where config.mk sets a subdirectory
other than 'man' for the manual.
Build: improve pointer man page text.
15.03.29 BJH Release 10.70.00
Add st4topgm, pgmtost4.
Add pgmtosbig. Mainly a test tool for sbigtopgm.
Add yuy2topam. Thanks Michael Haardt.
tifftopnm: allow input file to be nonseekable.
Thanks Ludolf Holzheid <email@example.com>.
pnmhisteq: add -noblack and -nowhite. Idea from Andrew Brooks
pgmmorphconv: add -gradient. Thanks Michael Haardt
giftopnm: Fix bug: crashes if purported GIF has neither a global
color map nor a local one.
pgmmorphconv: fix bug: always produces PGM Plain format. Always
present (progam was added to Netpbm in Release 10.0 (June 2002)).
pamtilt: fix bug: unconditional crash. Broken in Netpbm 10.63
pnmgamma -srgbtobt709, -bt709tosrgb: fix bug; incorrect output
nearly always. Always broken (These options were new in
Netpbm 10.32 (February 2006)).
pamtosvg: fix use of unset variable; probably results in a
crash. Always present (pamtosvg was new in Netpbm 10.33 (March
cameratopam: fix bug: variable used before set; unknown impact.
Introduced in Netpbm 10.66 (March 2014).
On Windows, don't leave temporary files around (previous code
did so because unlink of an open file fails in Windows; new
code deletes temporary files via atexit). Thanks
Ludolf Holzheid <firstname.lastname@example.org>.
Libnetpbm: fix external header file pm.h so it does not include
internal header file pm_c_util.h. Introduced in Netpbm
10.69 (December 2014).
build: fix incompatible type compilation error in giftopnm.
Introduced in Netpbm 10.38 (March 2007) (but obviously manifests
only in recent build environments).
build: fix compile failure in wordint_access_be.h with Bigendian
target platforms. Introduced in Netpbm 10.63 (June 2013).
build: fix compile failure in pbmtomacp, ppmtoacad, pgmabel:
TRUE redefined. Introduced in Netpbm 10.69 (December 2014).
14.12.25 BJH Release 10.69.00
pnmnorm: add -bsingle, -wsingle.
ppmtoarbtxt: Do some validation of format strings. Thanks
Akira F Urushibata <email@example.com>.
pamcrater: Add -verbose.
ppmtoarbtxt: Fail if a #() escape sequence runs off end of
file or is too long to process; before, the program would
treat the text from # to EOF or where the buffer filled up
as literal text, even ignoring any #() within.
NetBSD: show actual numbers in messages instead of "f" or
no information, by using NetBSD's vasprintf.
Make %g in messages display the actual number instead of \
messages where platform doesn't have vasprintf. (But scores of
%f are still left).
anytopnm: convert all images in a multi-image GIF instead of
just the first.
Improve "bad magic number" message from pbmXXX, and \
Fix bogus message from ppmXXX programs when the input is not
(per the magic number) a Netpbm image. Introduced after
Netpbm 10.26 (January 2005) but before Netpbm 10.35 (August
ppmtoarbtxt: Fix some undefined behavior when program limits
are exceeded (i.e. buffer overruns).
pambackground: fix bug: segfault or incorrect results in most
cases. Thanks Ludolf Holzheid (firstname.lastname@example.org).
Introduced in Netpbm 10.37 (December 2006).
Windows build: fix universal build failure with "No rule to make
...icon.netpbm.oLINKERISCOMPILER...". Broken in Netpbm 10.67