about summary refs log tree commit diff
diff options
context:
space:
mode:
authorgiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2016-09-26 16:44:20 +0000
committergiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2016-09-26 16:44:20 +0000
commit1e50cc0a1c2b29f06f451b220556990a1e4fc89a (patch)
treed4deb32706c672fe951fcaacf0cda349c2907b2b
parentcd5163ed76bf0a04c2677149271095459bd1f4c8 (diff)
downloadnetpbm-mirror-1e50cc0a1c2b29f06f451b220556990a1e4fc89a.tar.gz
netpbm-mirror-1e50cc0a1c2b29f06f451b220556990a1e4fc89a.tar.xz
netpbm-mirror-1e50cc0a1c2b29f06f451b220556990a1e4fc89a.zip
Release 10.47.63
git-svn-id: http://svn.code.sf.net/p/netpbm/code/super_stable@2821 9d0c8265-081b-0410-96cb-a4ca84ce46f8
-rw-r--r--converter/other/giftopnm.c9
-rw-r--r--converter/other/pngtopnm.c6
-rw-r--r--converter/other/pnmtopng.c6
-rw-r--r--doc/HISTORY9
-rw-r--r--version.mk2
5 files changed, 30 insertions, 2 deletions
diff --git a/converter/other/giftopnm.c b/converter/other/giftopnm.c
index 4b8b0487..ce5c5b36 100644
--- a/converter/other/giftopnm.c
+++ b/converter/other/giftopnm.c
@@ -48,6 +48,13 @@
   #define LITTLE_ENDIAN 1
 #endif
 
+#if defined(__x86_64__) | defined(__i486__) | defined(__vax__)
+# define UNALIGNED_OK 1
+#else
+# define UNALIGNED_OK 0
+#endif
+
+
 
 static __inline__ bool
 ReadOK(FILE *          const fileP,
@@ -591,7 +598,7 @@ bitsOfLeBuffer(const unsigned char * const buf,
 
     assert(len <= 16);
 
-    if (BYTE_ORDER == LITTLE_ENDIAN)
+    if (BYTE_ORDER == LITTLE_ENDIAN && UNALIGNED_OK)
         /* Fast path */
         codeBlock = *(uint32_t *) & buf[start/8];
     else
diff --git a/converter/other/pngtopnm.c b/converter/other/pngtopnm.c
index a8ea25a7..205df654 100644
--- a/converter/other/pngtopnm.c
+++ b/converter/other/pngtopnm.c
@@ -32,6 +32,12 @@
 #include "shhopt.h"
 #include "pnm.h"
 
+#if PNG_LIBPNG_VER >= 10500
+#error Your PNG library (<png.h>) is incompatible with this Netpbm source code.
+#error You need either an older PNG library (older than 1.5) or
+#error newer Netpbm source code (at least 10.55)
+#endif
+
 /* A hack until we can remove direct access to png_info from the program */
 #if PNG_LIBPNG_VER >= 10400
 #define TRANS_ALPHA trans_alpha
diff --git a/converter/other/pnmtopng.c b/converter/other/pnmtopng.c
index 52f69423..7d30b23b 100644
--- a/converter/other/pnmtopng.c
+++ b/converter/other/pnmtopng.c
@@ -69,6 +69,12 @@
 #include "nstring.h"
 #include "version.h"
 
+#if PNG_LIBPNG_VER >= 10500
+#error Your PNG library (<png.h>) is incompatible with this Netpbm source code.
+#error You need either an older PNG library (older than 1.5) or
+#error newer Netpbm source code (at least 10.55)
+#endif
+
 /* A hack until we can remove direct access to png_info from the program */
 #if PNG_LIBPNG_VER >= 10400
 #define trans_values trans_color
diff --git a/doc/HISTORY b/doc/HISTORY
index 922f5584..8775db62 100644
--- a/doc/HISTORY
+++ b/doc/HISTORY
@@ -4,6 +4,15 @@ Netpbm.
 CHANGE HISTORY 
 --------------
 
+16.09.26 BJH  Release 10.47.63
+
+              Build: Add warning when libpng versions is later than 1.4, since
+              it is incompatible with this release of Netpbm.
+
+              giftopnm: Fix bug: crash on little-endian computers that can't
+              tolerate unaligned memory access.  Thanks Ignatios Souvatzis
+              (is@netbsd.org).  Broken in Netpbm 10.47 (June 2009).
+
 16.06.26 BJH  Release 10.47.62
 
               pamarith: fix incorrect output when maxvals differ, for
diff --git a/version.mk b/version.mk
index 3ce18f69..3f375b5e 100644
--- a/version.mk
+++ b/version.mk
@@ -1,3 +1,3 @@
 NETPBM_MAJOR_RELEASE = 10
 NETPBM_MINOR_RELEASE = 47
-NETPBM_POINT_RELEASE = 62
+NETPBM_POINT_RELEASE = 63