about summary refs log tree commit diff
diff options
context:
space:
mode:
authorgiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2007-01-15 02:50:02 +0000
committergiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2007-01-15 02:50:02 +0000
commitab5f21f1db9de389b71d3326e5f7bb39ddaab34a (patch)
tree03f1fab9beff02771bb96fb0178354c3c800fc52
parentbc1f743694807d86246a2d4a62d85ff8fbf5ed21 (diff)
downloadnetpbm-mirror-ab5f21f1db9de389b71d3326e5f7bb39ddaab34a.tar.gz
netpbm-mirror-ab5f21f1db9de389b71d3326e5f7bb39ddaab34a.tar.xz
netpbm-mirror-ab5f21f1db9de389b71d3326e5f7bb39ddaab34a.zip
release 10.35.22
git-svn-id: http://svn.code.sf.net/p/netpbm/code/stable@206 9d0c8265-081b-0410-96cb-a4ca84ce46f8
-rw-r--r--Makefile.version2
-rwxr-xr-xbuildtools/installnetpbm.pl6
-rw-r--r--doc/HISTORY9
-rw-r--r--editor/ppmdraw.c4
-rw-r--r--lib/libpbm3.c4
5 files changed, 18 insertions, 7 deletions
diff --git a/Makefile.version b/Makefile.version
index 2269afb3..430534eb 100644
--- a/Makefile.version
+++ b/Makefile.version
@@ -1,3 +1,3 @@
 NETPBM_MAJOR_RELEASE = 10
 NETPBM_MINOR_RELEASE = 35
-NETPBM_POINT_RELEASE = 21
+NETPBM_POINT_RELEASE = 22
diff --git a/buildtools/installnetpbm.pl b/buildtools/installnetpbm.pl
index 5987ea8b..f6ab7ca0 100755
--- a/buildtools/installnetpbm.pl
+++ b/buildtools/installnetpbm.pl
@@ -829,7 +829,7 @@ installConfig($$$$$$$) {
 
     my $configTemplateFilename = dirname($0) . "/config_template";
 
-    my $templateOpened = open(TEMPLATE, "<", $configTemplateFilename);
+    my $templateOpened = open(TEMPLATE, "<$configTemplateFilename");
     if (!$templateOpened) {
         $error = "Can't open template file '$configTemplateFilename'.\n";
     } else {
@@ -837,7 +837,7 @@ installConfig($$$$$$$) {
 
         close(TEMPLATE);
 
-        my $versionOpened = open(VERSION, "<", "$pkgdir/VERSION");
+        my $versionOpened = open(VERSION, "<$pkgdir/VERSION");
 
         my $version;
         if (!$versionOpened) {
@@ -859,7 +859,7 @@ installConfig($$$$$$$) {
             
             my $filename = "$bindir/netpbm-config";
             
-            my $success = open(NETPBM_CONFIG, ">", $filename);
+            my $success = open(NETPBM_CONFIG, ">$filename");
             if ($success) {
                 chmod(0755, $filename);
                 foreach (@{$fileContentsR}) { print NETPBM_CONFIG; }
diff --git a/doc/HISTORY b/doc/HISTORY
index bc91e1d8..52b305c1 100644
--- a/doc/HISTORY
+++ b/doc/HISTORY
@@ -4,6 +4,15 @@ Netpbm.
 CHANGE HISTORY 
 --------------
 
+07.01.15 BJH  Release 10.35.22
+
+              libnetpbm: fix buffer overrun with PBM images < 8 columns.
+
+              ppmdraw: fix crash with use of freed storage.  Thanks
+              John Walker <kelvin@fourmilab.ch>.
+
+              installnetpbm: use 2-argument open() for old Perl.
+    
 06.12.31 BJH  Release 10.35.21
 
               libnetpbm: fix crash with PAM read as PNM.
diff --git a/editor/ppmdraw.c b/editor/ppmdraw.c
index 5a4be96b..0dd03bc9 100644
--- a/editor/ppmdraw.c
+++ b/editor/ppmdraw.c
@@ -332,9 +332,11 @@ static void
 freeScript(struct script * const scriptP) {
 
     struct commandListElt * p;
+    struct commandListElt * nextP;
 
-    for (p = scriptP->commandListHeadP; p; p = p->nextP) {
+    for (p = scriptP->commandListHeadP; p; p = nextP) {
         freeDrawCommand(p->commandP);
+        nextP = p->nextP;
         free(p);
     }
 
diff --git a/lib/libpbm3.c b/lib/libpbm3.c
index 2e7b922c..9cdc66ea 100644
--- a/lib/libpbm3.c
+++ b/lib/libpbm3.c
@@ -146,11 +146,11 @@ packBitsGeneric(FILE *          const fileP,
 
    Don't use any special CPU facilities to do the packing.
 -----------------------------------------------------------------------------*/
-    int col;
+    unsigned int col;
 
     #define iszero(x) ((x) == 0 ? 0 : 1)
 
-    for (col = 0; col < cols-7; col += 8)
+    for (col = 0; col + 7 < cols; col += 8)
         packedBits[col/8] = (
             iszero(bitrow[col+0]) << 7 |
             iszero(bitrow[col+1]) << 6 |