]> granicus.if.org Git - imagemagick/commitdiff
Latest autoconf / automake updates
authorCristy <urban-warrior@imagemagick.org>
Thu, 3 May 2018 16:15:26 +0000 (12:15 -0400)
committerCristy <urban-warrior@imagemagick.org>
Thu, 3 May 2018 16:15:26 +0000 (12:15 -0400)
12 files changed:
MagickCore/draw.c
config/ar-lib
config/compile
config/config.guess
config/config.sub
config/depcomp
config/ltmain.sh
config/missing
config/mkinstalldirs
config/tap-driver.sh
config/test-driver
configure

index 2ca6605eb91195c1511467c585b9e88be85ead3a..5c4f61df3e4e6bf5d6e652748d18cb5c265a1ab3 100644 (file)
@@ -6494,6 +6494,34 @@ static void TraceSquareLinecap(PrimitiveInfo *primitive_info,
 static PrimitiveInfo *TraceStrokePolygon(const Image *image,
   const DrawInfo *draw_info,const PrimitiveInfo *primitive_info)
 {
+#define CheckPathExtent(extent) \
+  if (q >= (ssize_t) (max_strokes-(extent)-6*BezierQuantum-360)) \
+    { \
+      if (~max_strokes < (extent+6*BezierQuantum+360)) \
+        { \
+          path_p=(PointInfo *) RelinquishMagickMemory(path_p); \
+          path_q=(PointInfo *) RelinquishMagickMemory(path_q); \
+        } \
+      else \
+        { \
+          max_strokes+=extent+6*BezierQuantum+360; \
+          path_p=(PointInfo *) ResizeQuantumMemory(path_p,max_strokes, \
+            sizeof(*path_p)); \
+          path_q=(PointInfo *) ResizeQuantumMemory(path_q,max_strokes, \
+            sizeof(*path_q)); \
+        } \
+      if ((path_p == (PointInfo *) NULL) || (path_q == (PointInfo *) NULL)) \
+        { \
+          if (path_p != (PointInfo *) NULL) \
+            path_p=(PointInfo *) RelinquishMagickMemory(path_p); \
+          if (path_q != (PointInfo *) NULL) \
+            path_q=(PointInfo *) RelinquishMagickMemory(path_q); \
+          polygon_primitive=(PrimitiveInfo *) \
+            RelinquishMagickMemory(polygon_primitive); \
+          return((PrimitiveInfo *) NULL); \
+        } \
+    }
+
   typedef struct _LineSegment
   {
     double
@@ -6736,32 +6764,7 @@ static PrimitiveInfo *TraceStrokePolygon(const Image *image,
           box_q[3].y)/(slope.p-slope.q));
         box_q[4].y=(double) (slope.p*(box_q[4].x-box_q[0].x)+box_q[0].y);
       }
-    if (q >= (ssize_t) (max_strokes-6*BezierQuantum-360))
-      {
-        if (~max_strokes < (6*BezierQuantum+360))
-          {
-            path_p=(PointInfo *) RelinquishMagickMemory(path_p);
-            path_q=(PointInfo *) RelinquishMagickMemory(path_q);
-          }
-        else
-          {
-            max_strokes+=6*BezierQuantum+360;
-            path_p=(PointInfo *) ResizeQuantumMemory(path_p,max_strokes,
-              sizeof(*path_p));
-            path_q=(PointInfo *) ResizeQuantumMemory(path_q,max_strokes,
-              sizeof(*path_q));
-          }
-        if ((path_p == (PointInfo *) NULL) || (path_q == (PointInfo *) NULL))
-          {
-            if (path_p != (PointInfo *) NULL)
-              path_p=(PointInfo *) RelinquishMagickMemory(path_p);
-            if (path_q != (PointInfo *) NULL)
-              path_q=(PointInfo *) RelinquishMagickMemory(path_q);
-            polygon_primitive=(PrimitiveInfo *)
-              RelinquishMagickMemory(polygon_primitive);
-            return((PrimitiveInfo *) NULL);
-          }
-      }
+    CheckPathExtent(0);
     dot_product=dx.q*dy.p-dx.p*dy.q;
     if (dot_product <= 0.0)
       switch (draw_info->linejoin)
@@ -6817,6 +6820,7 @@ static PrimitiveInfo *TraceStrokePolygon(const Image *image,
             theta.q+=2.0*MagickPI;
           arc_segments=(size_t) ceil((double) ((theta.q-theta.p)/
             (2.0*sqrt((double) (1.0/mid)))));
+          CheckPathExtent(arc_segments);
           path_q[q].x=box_q[1].x;
           path_q[q].y=box_q[1].y;
           q++;
@@ -6889,6 +6893,7 @@ static PrimitiveInfo *TraceStrokePolygon(const Image *image,
             theta.p+=2.0*MagickPI;
           arc_segments=(size_t) ceil((double) ((theta.p-theta.q)/
             (2.0*sqrt((double) (1.0/mid)))));
+          CheckPathExtent(arc_segments);
           path_p[p++]=box_p[1];
           for (j=1; j < (ssize_t) arc_segments; j++)
           {
index 05094d34c696249b10c58ac61f381a3f3b54f501..92bbe0866d8af0d60efdb54dcbca8fd44f23d80f 100755 (executable)
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/sh
 # Wrapper for Microsoft lib.exe
 
 me=ar-lib
index 2ab71e4ea13e0e902ec8a5357546f0a10d3f67ea..de0005d4f9f4018db22e6fd9665d589f3c626dde 100755 (executable)
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/sh
 # Wrapper for compilers which do not understand '-c -o'.
 
 scriptversion=2016-01-11.22; # UTC
index a7448442748cc6f98a066d2d1051fad3b043761a..717b22874d2b4cad20de524bd53b75f1d7ec2143 100755 (executable)
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/sh
 # Attempt to guess a canonical system name.
 #   Copyright 1992-2017 Free Software Foundation, Inc.
 
index 932128b337eeec7cdc60fd8e0f361531e80295f5..f4bafc18014761a0e36d319fb5e1713ddd0d846b 100755 (executable)
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/sh
 # Configuration validation subroutine script.
 #   Copyright 1992-2017 Free Software Foundation, Inc.
 
index b39f98f9ae9f950391abb09f4fa03ee113a07ac6..30379e224e264969dfbf301e5bded53aab538031 100755 (executable)
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/sh
 # depcomp - compile a program generating dependencies as side-effects
 
 scriptversion=2016-01-11.22; # UTC
index 0f0a2da3f9dd10627626bf9725b332d95f314393..30be9c82c07013c35ae65542561f1f1ffd87c72c 100644 (file)
@@ -7272,10 +7272,12 @@ func_mode_link ()
       # -tp=*                Portland pgcc target processor selection
       # --sysroot=*          for sysroot support
       # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+      # -specs=*             GCC specs files
       # -stdlib=*            select c++ std lib with clang
       -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
       -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
-      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*)
+      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
+      -specs=*)
         func_quote_for_eval "$arg"
        arg=$func_quote_for_eval_result
         func_append compile_command " $arg"
index c6e379584baf766f931c6ec18292a2c3dbe0eb90..b7e571efa44e300f6b9cc30b168a135f61e49c75 100755 (executable)
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/sh
 # Common wrapper for a few potentially missing GNU programs.
 
 scriptversion=2016-01-11.22; # UTC
index a31ce6d0294f39b0bc0eddee6d3d46c23ff53a01..a1c49d4e8686c13babaa2e07b2d4be457b1221d5 100755 (executable)
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/sh
 # mkinstalldirs --- make directory hierarchy
 
 scriptversion=2016-01-11.22; # UTC
index 82efa96c0546f0c98f91931929e552ca68852a34..3f6aa3a1c6b9148a138e7e40eb5aef55a26e8f3d 100755 (executable)
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/sh
 # Copyright (C) 2011-2017 Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or modify
index 0218a01f616eb7265619df4f87151d56be9ebaf1..de1e61da19bedd88aede0d9dc94ce28c35d624bb 100755 (executable)
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/sh
 # test-driver - basic testsuite driver script.
 
 scriptversion=2016-01-11.22; # UTC
index 177db09ffeb2149488d0ad7aab756eb08f5a3ee0..a815db257c3673192f5f2069d7f2c46e07b32870 100755 (executable)
--- a/configure
+++ b/configure
@@ -4554,7 +4554,7 @@ MAGICK_PATCHLEVEL_VERSION=31
 
 MAGICK_VERSION=7.0.7-31
 
-MAGICK_GIT_REVISION=14243:d9d23d85b:20180502
+MAGICK_GIT_REVISION=14247:3b2ed44d6:20180503
 
 
 # Substitute library versioning