[142901] trunk/dports/editors/xemacs
dstrubbe at macports.org
dstrubbe at macports.org
Sat Dec 12 07:42:59 PST 2015
Revision: 142901
https://trac.macports.org/changeset/142901
Author: dstrubbe at macports.org
Date: 2015-11-26 19:01:47 -0800 (Thu, 26 Nov 2015)
Log Message:
-----------
xemacs: Return to the stable branch 21.4, by popular demand. The newer 21.5 beta branch has been causing problems.
Modified Paths:
--------------
trunk/dports/editors/xemacs/Portfile
Added Paths:
-----------
trunk/dports/editors/xemacs/files/51ced9b8fb63e4be59ea611b58128c400e3df987.diff
trunk/dports/editors/xemacs/files/bcefd94fa6513d48f4dc8519f633b2df66b553bc.diff
Removed Paths:
-------------
trunk/dports/editors/xemacs/files/patch-src-glyphs-eimage.c.diff
Modified: trunk/dports/editors/xemacs/Portfile
===================================================================
--- trunk/dports/editors/xemacs/Portfile 2015-11-26 20:56:10 UTC (rev 142900)
+++ trunk/dports/editors/xemacs/Portfile 2015-11-27 03:01:47 UTC (rev 142901)
@@ -5,13 +5,15 @@
name xemacs
conflicts emacs
-version 21.5.16
+# note: the newer 21.5 series is beta and is not stable.
+version 21.4.22
set sumo_date 2010-07-27
+epoch 1
categories editors x11
platforms darwin
maintainers nomaintainer
license GPL-2+
-revision 2
+revision 11
description A highly customizable open-source text editor.
@@ -21,8 +23,8 @@
Emacs, in particular GNU Emacs.
homepage http://www.xemacs.org
-master_sites http://ftp.xemacs.org/pub/xemacs/xemacs-21.5/:xemacs \
- ftp://ftp.xemacs.org/pub/xemacs/xemacs-21.5/:xemacs \
+master_sites http://ftp.xemacs.org/pub/xemacs/xemacs-21.4/:xemacs \
+ ftp://ftp.xemacs.org/pub/xemacs/xemacs-21.4/:xemacs \
http://ftp.xemacs.org/pub/xemacs/packages/:package \
ftp://ftp.xemacs.org/pub/xemacs/packages/:package \
http://mirrors.ibiblio.org/pub/mirrors/xemacs/packages/:package
@@ -34,9 +36,9 @@
distfiles ${xemacs_dist}:xemacs ${sumo_dist}:package ${mule_dist}:package
checksums xemacs-${version}.tar.gz \
- md5 09f532e91cda52d9a4e9239c8909e631 \
- sha1 f971a4650631db9c620c0b742bc30ede5dbbaf0e \
- rmd160 968aae3a4aa7937cedc3eca5b0b804181f24ac5c \
+ md5 b0b762407316d6de170db69aba7a37cf \
+ sha1 24ed9b13d80c53c06bba60c7bb68387f692b7373 \
+ rmd160 f7d71d3607c3301760df8f7ae5a93d1d37df56ba \
xemacs-sumo-${sumo_date}.tar.gz \
md5 12ee5fca32ff7e3bfd6ecfd4bb157688 \
sha1 60b9601b9d865bdb031c8babc4020ab2a8a3258f \
@@ -46,7 +48,10 @@
sha1 852a5ac51bb713a16f62676bb5db3f2ab06379cd \
rmd160 601a735ff800ceb2443ec9b26bc0f7c5b2215854
-patchfiles patch-src-glyphs-eimage.c.diff
+patchfiles 51ced9b8fb63e4be59ea611b58128c400e3df987.diff \
+ bcefd94fa6513d48f4dc8519f633b2df66b553bc.diff \
+ texinfo5.patch
+patch.pre_args -p1
configure.args --mandir=${prefix}/share/man \
--without-postgresql \
@@ -108,5 +113,5 @@
}
livecheck.type regex
-livecheck.url http://ftp.xemacs.org/pub/xemacs/xemacs-21.5
+livecheck.url http://ftp.xemacs.org/pub/xemacs/xemacs-21.4
livecheck.regex ${name}-(\[0-9.\]+)${extract.suffix}
Copied: trunk/dports/editors/xemacs/files/51ced9b8fb63e4be59ea611b58128c400e3df987.diff (from rev 141545, trunk/dports/editors/xemacs/files/51ced9b8fb63e4be59ea611b58128c400e3df987.diff)
===================================================================
--- trunk/dports/editors/xemacs/files/51ced9b8fb63e4be59ea611b58128c400e3df987.diff (rev 0)
+++ trunk/dports/editors/xemacs/files/51ced9b8fb63e4be59ea611b58128c400e3df987.diff 2015-11-27 03:01:47 UTC (rev 142901)
@@ -0,0 +1,60 @@
+# HG changeset patch
+# User Vin Shelton <acs at xemacs.org>
+# Date 1323317837 18000
+# Node ID 51ced9b8fb63e4be59ea611b58128c400e3df987
+# Parent 032a91928d47b36ae3dd98885767d9e0202892f7
+Clean up PNG handling. Fix crash in issue570.
+
+diff -r 032a91928d47b36ae3dd98885767d9e0202892f7 -r 51ced9b8fb63e4be59ea611b58128c400e3df987 src/glyphs-eimage.c
+--- a/src/glyphs-eimage.c Sat Dec 03 20:04:12 2011 -0500
++++ b/src/glyphs-eimage.c Wed Dec 07 23:17:17 2011 -0500
+@@ -935,13 +935,22 @@
+ png_read_info (png_ptr, info_ptr);
+
+ {
+- int y;
++ int y, padding;
+ unsigned char **row_pointers;
+ height = info_ptr->height;
+ width = info_ptr->width;
+
+- /* Wow, allocate all the memory. Truly, exciting. */
+- unwind.eimage = xnew_array_and_zero (unsigned char, width * height * 3);
++ /* Wow, allocate all the memory. Truly, exciting.
++ Well, yes, there's excitement to be had. It turns out that libpng
++ strips in place, so the last row overruns the buffer if depth is 16
++ or there's an alpha channel. This is a crash on Linux. So we need
++ to add padding.
++ The worst case is reducing 8 bytes (16-bit RGBA) to 3 (8-bit RGB). */
++
++ padding = 5 * width;
++ unwind.eimage = xnew_array_and_zero (unsigned char,
++ width * height * 3 + padding);
++
+ /* libpng expects that the image buffer passed in contains a
+ picture to draw on top of if the png has any transparencies.
+ This could be a good place to pass that in... */
+@@ -996,9 +1005,6 @@
+ if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY ||
+ info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
+ png_set_gray_to_rgb (png_ptr);
+- /* we can't handle alpha values */
+- if (info_ptr->color_type & PNG_COLOR_MASK_ALPHA)
+- png_set_strip_alpha (png_ptr);
+ /* tell libpng to strip 16 bit depth files down to 8 bits */
+ if (info_ptr->bit_depth == 16)
+ png_set_strip_16 (png_ptr);
+@@ -1011,6 +1017,13 @@
+ png_set_packing (png_ptr);
+ }
+
++ /* we can't handle alpha values
++ png_read_update_info ensures the alpha flag is set when one of
++ the transforms above causes an alpha channel to be generated */
++ png_read_update_info (png_ptr, info_ptr);
++ if (info_ptr->color_type & PNG_COLOR_MASK_ALPHA)
++ png_set_strip_alpha (png_ptr);
++
+ png_read_image (png_ptr, row_pointers);
+ png_read_end (png_ptr, info_ptr);
+
Copied: trunk/dports/editors/xemacs/files/bcefd94fa6513d48f4dc8519f633b2df66b553bc.diff (from rev 141545, trunk/dports/editors/xemacs/files/bcefd94fa6513d48f4dc8519f633b2df66b553bc.diff)
===================================================================
--- trunk/dports/editors/xemacs/files/bcefd94fa6513d48f4dc8519f633b2df66b553bc.diff (rev 0)
+++ trunk/dports/editors/xemacs/files/bcefd94fa6513d48f4dc8519f633b2df66b553bc.diff 2015-11-27 03:01:47 UTC (rev 142901)
@@ -0,0 +1,87 @@
+# HG changeset patch
+# User Vin Shelton <acs at xemacs.org>
+# Date 1342078132 14400
+# Node ID bcefd94fa6513d48f4dc8519f633b2df66b553bc
+# Parent 2cf343fcb482fa6644675f3174c3c0712c53c074
+Support libpng-1.5.10
+
+diff -r 2cf343fcb482fa6644675f3174c3c0712c53c074 -r bcefd94fa6513d48f4dc8519f633b2df66b553bc src/glyphs-eimage.c
+--- a/src/glyphs-eimage.c Sun Jan 08 17:05:56 2012 -0500
++++ b/src/glyphs-eimage.c Thu Jul 12 03:28:52 2012 -0400
+@@ -937,8 +937,8 @@
+ {
+ int y, padding;
+ unsigned char **row_pointers;
+- height = info_ptr->height;
+- width = info_ptr->width;
++ height = png_get_image_height(png_ptr, info_ptr);
++ width = png_get_image_width(png_ptr, info_ptr);
+
+ /* Wow, allocate all the memory. Truly, exciting.
+ Well, yes, there's excitement to be had. It turns out that libpng
+@@ -999,19 +999,19 @@
+ /* Now that we're using EImage, ask for 8bit RGB triples for any type
+ of image*/
+ /* convert palette images to full RGB */
+- if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE)
++ if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_PALETTE)
+ png_set_expand (png_ptr);
+ /* send grayscale images to RGB too */
+- if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY ||
+- info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
++ if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_GRAY ||
++ png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_GRAY_ALPHA)
+ png_set_gray_to_rgb (png_ptr);
+ /* tell libpng to strip 16 bit depth files down to 8 bits */
+- if (info_ptr->bit_depth == 16)
++ if (png_get_bit_depth(png_ptr, info_ptr) == 16)
+ png_set_strip_16 (png_ptr);
+ /* if the image is < 8 bits, pad it out */
+- if (info_ptr->bit_depth < 8)
++ if (png_get_bit_depth(png_ptr, info_ptr) < 8)
+ {
+- if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY)
++ if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_GRAY)
+ png_set_expand (png_ptr);
+ else
+ png_set_packing (png_ptr);
+@@ -1021,7 +1021,7 @@
+ png_read_update_info ensures the alpha flag is set when one of
+ the transforms above causes an alpha channel to be generated */
+ png_read_update_info (png_ptr, info_ptr);
+- if (info_ptr->color_type & PNG_COLOR_MASK_ALPHA)
++ if (png_get_color_type(png_ptr, info_ptr) & PNG_COLOR_MASK_ALPHA)
+ png_set_strip_alpha (png_ptr);
+
+ png_read_image (png_ptr, row_pointers);
+@@ -1036,17 +1036,22 @@
+ * from lisp anyway. - WMP
+ */
+ {
+- int i;
++ int i, num_text = 0;
++ png_textp text_ptr = NULL;
+
+- for (i = 0 ; i < info_ptr->num_text ; i++)
++ if (png_get_text (png_ptr, info_ptr, &text_ptr, &num_text) > 0)
+ {
+- /* How paranoid do I have to be about no trailing NULLs, and
+- using (int)info_ptr->text[i].text_length, and strncpy and a temp
+- string somewhere? */
++ for (i = 0 ; i < num_text ; i++)
++ {
+
+- warn_when_safe (Qpng, Qinfo, "%s - %s",
+- info_ptr->text[i].key,
+- info_ptr->text[i].text);
++ /* How paranoid do I have to be about no trailing NULLs, and
++ using (int)info_ptr->text[i].text_length, and strncpy and a temp
++ string somewhere? */
++
++ warn_when_safe (Qpng, Qinfo, "%s - %s",
++ text_ptr[i].key, text_ptr[i].text);
++ }
++
+ }
+ }
+ #endif
Deleted: trunk/dports/editors/xemacs/files/patch-src-glyphs-eimage.c.diff
===================================================================
--- trunk/dports/editors/xemacs/files/patch-src-glyphs-eimage.c.diff 2015-11-26 20:56:10 UTC (rev 142900)
+++ trunk/dports/editors/xemacs/files/patch-src-glyphs-eimage.c.diff 2015-11-27 03:01:47 UTC (rev 142901)
@@ -1,74 +0,0 @@
---- src/glyphs-eimage.c.orig 2015-10-20 11:16:07.000000000 -0400
-+++ src/glyphs-eimage.c 2015-10-20 11:23:53.000000000 -0400
-@@ -920,8 +920,8 @@
- {
- int y;
- UChar_Binary **row_pointers;
-- height = info_ptr->height;
-- width = info_ptr->width;
-+ height = png_get_image_height(png_ptr, info_ptr);
-+ width = png_get_image_width(png_ptr, info_ptr);
-
- /* Wow, allocate all the memory. Truly, exciting. */
- unwind.eimage = xnew_array_and_zero (UChar_Binary, width * height * 3);
-@@ -973,22 +973,22 @@
- /* Now that we're using EImage, ask for 8bit RGB triples for any type
- of image*/
- /* convert palette images to full RGB */
-- if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE)
-+ if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_PALETTE)
- png_set_expand (png_ptr);
- /* send grayscale images to RGB too */
-- if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY ||
-- info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
-+ if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_GRAY ||
-+ png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_GRAY_ALPHA)
- png_set_gray_to_rgb (png_ptr);
- /* we can't handle alpha values */
-- if (info_ptr->color_type & PNG_COLOR_MASK_ALPHA)
-+ if (png_get_color_type(png_ptr, info_ptr) & PNG_COLOR_MASK_ALPHA)
- png_set_strip_alpha (png_ptr);
- /* tell libpng to strip 16 bit depth files down to 8 bits */
-- if (info_ptr->bit_depth == 16)
-+ if (png_get_bit_depth(png_ptr, info_ptr) == 16)
- png_set_strip_16 (png_ptr);
- /* if the image is < 8 bits, pad it out */
-- if (info_ptr->bit_depth < 8)
-+ if (png_get_bit_depth(png_ptr, info_ptr) < 8)
- {
-- if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY)
-+ if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_GRAY)
- png_set_expand (png_ptr);
- else
- png_set_packing (png_ptr);
-@@ -1008,17 +1008,21 @@
- /* #### I've turned this on, since these warnings are now
- unobtrusive. */
- {
-- int i;
-+ int i, num_text = 0;
-+ png_textp text_ptr = NULL;
-
-- for (i = 0 ; i < info_ptr->num_text ; i++)
-+ if (png_get_text (png_ptr, info_ptr, &text_ptr, &num_text) > 0)
- {
-- /* How paranoid do I have to be about no trailing NULLs, and
-- using (int)info_ptr->text[i].text_length, and strncpy and a temp
-- string somewhere? */
--
-- warn_when_safe (Qpng, Qinfo, "%s - %s",
-- info_ptr->text[i].key,
-- info_ptr->text[i].text);
-+ for (i = 0 ; i < num_text ; i++)
-+ {
-+
-+ /* How paranoid do I have to be about no trailing NULLs, and
-+ using (int)info_ptr->text[i].text_length, and strncpy and a temp
-+ string somewhere? */
-+
-+ warn_when_safe (Qpng, Qinfo, "%s - %s",
-+ text_ptr[i].key, text_ptr[i].text);
-+ }
- }
- }
- #endif
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20151212/00265a59/attachment.html>
More information about the macports-changes
mailing list