GraphicsMagick: VisualMagick/magick/magick_config.h.in: Block bu...

GraphicsMagick Commits <[email protected]> Wed, 13 Sep 2023 08:23:03 -0500
Newsgroups gmane.comp.video.graphicsmagick.cvs
Message-ID <mailman.283.1694611396.7975.graphicsmagick-commit@lists.sourceforge.net>
changeset fb80a66a49f7 in /hg/GraphicsMagick
details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=fb80a66a49f7
summary: VisualMagick/magick/magick_config.h.in: Block building the XTRN coder unless the user enables EnableXTRNCoder

diffstat:

 ChangeLog                              |   9 +++++++++
 VisualMagick/installer/inc/version.isx |   4 ++--
 VisualMagick/magick/magick_config.h.in |  10 ++++++++++
 coders/xtrn.c                          |  10 +++++++++-
 magick/static.c                        |   4 +++-
 magick/version.h                       |   4 ++--
 www/Changelog.html                     |  11 +++++++++++
 www/ImageMagickObject.html             |  22 ++++++++++++----------
 www/ImageMagickObject.rst              |  22 ++++++++++++----------
 9 files changed, 70 insertions(+), 26 deletions(-)

diffs (229 lines):

diff -r 70cc2017bd5a -r fb80a66a49f7 ChangeLog
--- a/ChangeLog	Tue Sep 12 12:12:16 2023 -0500
+++ b/ChangeLog	Wed Sep 13 08:22:58 2023 -0500
@@ -1,3 +1,12 @@
+2023-09-13  Bob Friesenhahn  <[email protected]>
+
+	* VisualMagick/magick/magick_config.h.in: Block building the XTRN
+	coder unless the user enables EnableXTRNCoder.  The XTRN coder is
+	primarily used by the optional contributed ImageMagickObject COM+
+	DLL object, but it might be used for a similar purpose.  The XTRN
+	coder serves no purpose unless invoked from the address space of a
+	program using GraphicsMagick.
+
 2023-09-10  Bob Friesenhahn  <[email protected]>
 
 	* tests/{constitute.c, drawtest.c, rwblob.c, rwfile.c}: Initialize
diff -r 70cc2017bd5a -r fb80a66a49f7 VisualMagick/installer/inc/version.isx
--- a/VisualMagick/installer/inc/version.isx	Tue Sep 12 12:12:16 2023 -0500
+++ b/VisualMagick/installer/inc/version.isx	Wed Sep 13 08:22:58 2023 -0500
@@ -10,5 +10,5 @@
 
 #define public MagickPackageName "GraphicsMagick"
 #define public MagickPackageVersion "1.4"
-#define public MagickPackageVersionAddendum ".020230910"
-#define public MagickPackageReleaseDate "snapshot-20230910"
+#define public MagickPackageVersionAddendum ".020230913"
+#define public MagickPackageReleaseDate "snapshot-20230913"
diff -r 70cc2017bd5a -r fb80a66a49f7 VisualMagick/magick/magick_config.h.in
--- a/VisualMagick/magick/magick_config.h.in	Tue Sep 12 12:12:16 2023 -0500
+++ b/VisualMagick/magick/magick_config.h.in	Wed Sep 13 08:22:58 2023 -0500
@@ -122,6 +122,16 @@
 // which may handle untrusted inputs such as file uploads from the Internet.
 #undef EnableBrokenCoders
 
+/////////////
+//
+// EnableXTRNCoder
+//
+// Enable building the XTRN coder, which is needed by the Microsoft
+// Windows ImageMagickObject COM+ DLL, or may be used for similar
+// dedicated purposes where a Windows program wants to pass data
+// to/from GraphicsMagick via filenmames containing encoded memory
+// pointers.
+#undef EnableXTRNCoder
 
 /////////////
 //
diff -r 70cc2017bd5a -r fb80a66a49f7 coders/xtrn.c
--- a/coders/xtrn.c	Tue Sep 12 12:12:16 2023 -0500
+++ b/coders/xtrn.c	Wed Sep 13 08:22:58 2023 -0500
@@ -1,5 +1,5 @@
 /*
-% Copyright (C) 2003-2022 GraphicsMagick Group
+% Copyright (C) 2003-2023 GraphicsMagick Group
 % Copyright (C) 2002 ImageMagick Studio
 %
 % This program is covered by multiple licenses, which are described in
@@ -51,6 +51,7 @@
 */
 #if defined(_VISUALC_)
 #include "magick/studio.h"
+#if defined(EnableXTRNCoder)
 #include "magick/blob.h"
 #include "magick/constitute.h"
 #include "magick/delegate.h"
@@ -225,6 +226,7 @@
     StopTimer(&image->timer);
   return(image);
 }
+#endif /* if defined(EnableXTRNCoder) */
 
 /*
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -251,6 +253,7 @@
 */
 ModuleExport void RegisterXTRNImage(void)
 {
+#if defined(EnableXTRNCoder)
   MagickInfo
     *entry;
 
@@ -289,6 +292,7 @@
   entry->description="External transfer via a smart array interface";
   entry->module="XTRN";
   RegisterMagickInfo(entry);
+#endif /* if defined(EnableXTRNCoder) */
 }
 
 /*
@@ -312,11 +316,14 @@
 */
 ModuleExport void UnregisterXTRNImage(void)
 {
+#if defined(EnableXTRNCoder)
   UnregisterMagickInfo("XTRNFILE");
   UnregisterMagickInfo("XTRNIMAGE");
   UnregisterMagickInfo("XTRNBLOB");
   UnregisterMagickInfo("XTRNARRAY");
+#endif /* if defined(EnableXTRNCoder) */
 }
+#if defined(EnableXTRNCoder)
 
 /*
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -531,4 +538,5 @@
     }
   return(True);
 }
+#endif /* if defined(EnableXTRNCoder) */
 #endif /* defined(_VISUALC_) */
diff -r 70cc2017bd5a -r fb80a66a49f7 magick/static.c
--- a/magick/static.c	Tue Sep 12 12:12:16 2023 -0500
+++ b/magick/static.c	Wed Sep 13 08:22:58 2023 -0500
@@ -1,5 +1,5 @@
 /*
-% Copyright (C) 2003-2021 GraphicsMagick Group
+% Copyright (C) 2003-2023 GraphicsMagick Group
 % Copyright (C) 2002 ImageMagick Studio
 %
 % This program is covered by multiple licenses, which are described in
@@ -194,7 +194,9 @@
   STATICM("XCF",RegisterXCFImage,UnregisterXCFImage),
   STATICM("XPM",RegisterXPMImage,UnregisterXPMImage),
 #if defined(_VISUALC_)
+#if defined(EnableXTRNCoder)
   STATICM("XTRN",RegisterXTRNImage,UnregisterXTRNImage),
+#endif /* if defined(EnableXTRNCoder) */
 #endif /* defined(_VISUALC_) */
 #if defined(HasX11)
   STATICM("XWD",RegisterXWDImage,UnregisterXWDImage),
diff -r 70cc2017bd5a -r fb80a66a49f7 magick/version.h
--- a/magick/version.h	Tue Sep 12 12:12:16 2023 -0500
+++ b/magick/version.h	Wed Sep 13 08:22:58 2023 -0500
@@ -38,8 +38,8 @@
 #define MagickLibVersion  0x272403
 #define MagickLibVersionText  "1.4"
 #define MagickLibVersionNumber 27,24,3
-#define MagickChangeDate   "20230910"
-#define MagickReleaseDate  "snapshot-20230910"
+#define MagickChangeDate   "20230913"
+#define MagickReleaseDate  "snapshot-20230913"
 
 /*
   The MagickLibInterfaceNewest and MagickLibInterfaceOldest defines
diff -r 70cc2017bd5a -r fb80a66a49f7 www/Changelog.html
--- a/www/Changelog.html	Tue Sep 12 12:12:16 2023 -0500
+++ b/www/Changelog.html	Wed Sep 13 08:22:58 2023 -0500
@@ -37,6 +37,17 @@
 </div>
 
 <div class="document">
+<p>2023-09-13  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
+<blockquote>
+<ul class="simple">
+<li><p>VisualMagick/magick/magick_config.h.in: Block building the XTRN
+coder unless the user enables EnableXTRNCoder.  The XTRN coder is
+primarily used by the optional contributed ImageMagickObject COM+
+DLL object, but it might be used for a similar purpose.  The XTRN
+coder serves no purpose unless invoked from the address space of a
+program using GraphicsMagick.</p></li>
+</ul>
+</blockquote>
 <p>2023-09-10  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
 <blockquote>
 <ul class="simple">
diff -r 70cc2017bd5a -r fb80a66a49f7 www/ImageMagickObject.html
--- a/www/ImageMagickObject.html	Tue Sep 12 12:12:16 2023 -0500
+++ b/www/ImageMagickObject.html	Wed Sep 13 08:22:58 2023 -0500
@@ -90,16 +90,18 @@
 </div>
 <div class="section" id="building-imagemagickobject-from-source">
 <h1>Building ImageMagickObject From Source</h1>
-<p>The source code for <em>ImageMagickObject</em> is available from <em>GraphicsMagick</em>
-CVS, or as part of the <em>GraphicsMagick</em> Windows source package. Once the
-source code has been retrieved and extracted, the source for
-<em>ImageMagickObject</em> may be found hidden in the directory
-&quot;<span class="docutils literal">GraphicsMagick\contrib\win32\ATL7\ImageMagickObject</span>&quot;, however,
-<em>GraphicsMagick</em> itself must be built using the &quot;static-multithread&quot;
-(VisualStaticMT) build configuration. Building <em>ImageMagickObject</em>
-requires Microsoft Visual C++ 7.0 as delivered with Microsoft's Visual
-Studio .net package. See the Windows compilation instructions in order to
-get <em>GraphicsMagick</em> itself built before building <em>ImageMagickObject</em>.</p>
+<p>The source code for <em>ImageMagickObject</em> is available from
+<em>GraphicsMagick</em> Mercurial, or as part of the <em>GraphicsMagick</em> Windows
+source package. Once the source code has been retrieved and extracted,
+the source for <em>ImageMagickObject</em> may be found hidden in the
+directory &quot;<span class="docutils literal">GraphicsMagick\contrib\win32\ATL7\ImageMagickObject</span>&quot;,
+however, <em>GraphicsMagick</em> itself must be built using the
+&quot;static-multithread&quot; (VisualStaticMT) build configuration, and the
+'EnableXTRNCoder' define must be enabled in the build by editing
+'magick_config.h'. Building <em>ImageMagickObject</em> requires Microsoft
+Visual C++ 7.0 (or later) as delivered with Microsoft's Visual Studio
+.net package. See the Windows compilation instructions in order to get
+<em>GraphicsMagick</em> itself built before building <em>ImageMagickObject</em>.</p>
 <p>Once the VisualStaticMT project has been built, <em>ImageMagickObject</em> may
 be built by following the procedure:</p>
 <pre class="literal-block">cd  GraphicsMagick\contrib\win32\ATL7ImageMagickObject
diff -r 70cc2017bd5a -r fb80a66a49f7 www/ImageMagickObject.rst
--- a/www/ImageMagickObject.rst	Tue Sep 12 12:12:16 2023 -0500
+++ b/www/ImageMagickObject.rst	Wed Sep 13 08:22:58 2023 -0500
@@ -82,16 +82,18 @@
 Building ImageMagickObject From Source
 ======================================
 
-The source code for *ImageMagickObject* is available from *GraphicsMagick*
-CVS, or as part of the *GraphicsMagick* Windows source package. Once the
-source code has been retrieved and extracted, the source for
-*ImageMagickObject* may be found hidden in the directory
-"``GraphicsMagick\contrib\win32\ATL7\ImageMagickObject``", however,
-*GraphicsMagick* itself must be built using the "static-multithread"
-(VisualStaticMT) build configuration. Building *ImageMagickObject*
-requires Microsoft Visual C++ 7.0 as delivered with Microsoft's Visual
-Studio .net package. See the Windows compilation instructions in order to
-get *GraphicsMagick* itself built before building *ImageMagickObject*.
+The source code for *ImageMagickObject* is available from
+*GraphicsMagick* Mercurial, or as part of the *GraphicsMagick* Windows
+source package. Once the source code has been retrieved and extracted,
+the source for *ImageMagickObject* may be found hidden in the
+directory "``GraphicsMagick\contrib\win32\ATL7\ImageMagickObject``",
+however, *GraphicsMagick* itself must be built using the
+"static-multithread" (VisualStaticMT) build configuration, and the
+'EnableXTRNCoder' define must be enabled in the build by editing
+'magick_config.h'. Building *ImageMagickObject* requires Microsoft
+Visual C++ 7.0 (or later) as delivered with Microsoft's Visual Studio
+.net package. See the Windows compilation instructions in order to get
+*GraphicsMagick* itself built before building *ImageMagickObject*.
 
 Once the VisualStaticMT project has been built, *ImageMagickObject* may
 be built by following the procedure::