emacs:ver.bump new tol.

This commit is contained in:
Rmys
2019-02-01 11:03:05 +03:00
parent c9f4d2270d
commit 11323573f6
6 changed files with 267 additions and 1 deletions
@@ -0,0 +1,72 @@
From f21fa142aca53e3de5783e1ce6fe1bf116174aeb Mon Sep 17 00:00:00 2001
From: Robert Pluim <rpluim@gmail.com>
Date: Tue, 3 Apr 2018 11:06:01 +0200
Subject: [PATCH] Ignore color fonts when using Xft
* src/font.c (syms_of_font): New configuration variable
xft-ignore-color-fonts, default t.
* src/ftfont.c (ftfont_spec_pattern): Tell fontconfig to ignore
color fonts if xft-ignore-color-fonts is t. (Bug#30874, Bug#30045)
* etc/NEWS: Document xft-ignore-color-fonts.
---
etc/NEWS | 6 ++++++
src/font.c | 7 +++++++
src/ftfont.c | 7 +++++++
3 files changed, 20 insertions(+)
diff --git a/etc/NEWS b/etc/NEWS
index 873e2dfd1d..2bec8de0ea 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -31,6 +31,12 @@ in its NEWS.)
* Changes in Emacs 26.2
+---
+** New variable 'xft-ignore-color-fonts'.
+Default t means don't try to load color fonts when using Xft, as they
+often cause crashes. Set it to nil if you really need those fonts.
+(Bug#30874)
+
* Editing Changes in Emacs 26.2
diff --git a/src/font.c b/src/font.c
index e53935a15c..305bb14576 100644
--- a/src/font.c
+++ b/src/font.c
@@ -5476,6 +5476,13 @@ Disabling compaction of font caches might enlarge the Emacs memory
footprint in sessions that use lots of different fonts. */);
inhibit_compacting_font_caches = 0;
+ DEFVAR_BOOL ("xft-ignore-color-fonts",
+ Vxft_ignore_color_fonts,
+ doc: /*
+Non-nil means don't query fontconfig for color fonts, since they often
+cause Xft crashes. Only has an effect in Xft builds. */);
+ Vxft_ignore_color_fonts = 1;
+
#ifdef HAVE_WINDOW_SYSTEM
#ifdef HAVE_FREETYPE
syms_of_ftfont ();
diff --git a/src/ftfont.c b/src/ftfont.c
index c2e093e633..24a92dd52e 100644
--- a/src/ftfont.c
+++ b/src/ftfont.c
@@ -764,6 +764,13 @@ ftfont_spec_pattern (Lisp_Object spec, char *otlayout, struct OpenTypeSpec **ots
if (scalable >= 0
&& ! FcPatternAddBool (pattern, FC_SCALABLE, scalable ? FcTrue : FcFalse))
goto err;
+#ifdef HAVE_XFT
+ /* We really don't like color fonts, they cause Xft crashes. See
+ Bug#30874. */
+ if (Vxft_ignore_color_fonts
+ && ! FcPatternAddBool(pattern, FC_COLOR, FcFalse))
+ goto err;
+#endif
goto finish;
--
2.17.1
@@ -0,0 +1,32 @@
From 97d61f878e6378efbde73923a36f71caac73a4a0 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Tue, 3 Apr 2018 08:12:41 -0700
Subject: [PATCH] Port FC_COLOR change to older fontconfig
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Problem reported by John ff in:
https://lists.gnu.org/r/emacs-devel/2018-04/msg00058.html
* src/ftfont.c (ftfont_spec_pattern) [!FC_COLOR]:
Dont use FC_COLOR on older fontconfigs that dont have it.
---
src/ftfont.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/ftfont.c b/src/ftfont.c
index 24a92dd52e..84e4a30389 100644
--- a/src/ftfont.c
+++ b/src/ftfont.c
@@ -764,7 +764,7 @@ ftfont_spec_pattern (Lisp_Object spec, char *otlayout, struct OpenTypeSpec **ots
if (scalable >= 0
&& ! FcPatternAddBool (pattern, FC_SCALABLE, scalable ? FcTrue : FcFalse))
goto err;
-#ifdef HAVE_XFT
+#if defined HAVE_XFT && defined FC_COLOR
/* We really don't like color fonts, they cause Xft crashes. See
Bug#30874. */
if (Vxft_ignore_color_fonts
--
2.17.1
@@ -0,0 +1,25 @@
From acaebed014951fdd13855aa7bba9aee60618785f Mon Sep 17 00:00:00 2001
From: Eli Zaretskii <eliz@gnu.org>
Date: Tue, 3 Apr 2018 19:59:40 +0300
Subject: [PATCH] ; * src/ftfont.c (ftfont_spec_pattern): Fix whitespace.
---
src/ftfont.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/ftfont.c b/src/ftfont.c
index 84e4a30389..8f048d2983 100644
--- a/src/ftfont.c
+++ b/src/ftfont.c
@@ -768,7 +768,7 @@ ftfont_spec_pattern (Lisp_Object spec, char *otlayout, struct OpenTypeSpec **ots
/* We really don't like color fonts, they cause Xft crashes. See
Bug#30874. */
if (Vxft_ignore_color_fonts
- && ! FcPatternAddBool(pattern, FC_COLOR, FcFalse))
+ && ! FcPatternAddBool (pattern, FC_COLOR, FcFalse))
goto err;
#endif
--
2.17.1
@@ -0,0 +1,34 @@
https://bugs.gentoo.org/660448
From 13726cbac681e442649de1dfd73fcc7f889e87d9 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Sat, 7 Jul 2018 10:59:22 -0700
Subject: [PATCH] Fix bootstrap infloop in GNU/Linux alpha
* src/emacs.c (main): Do not re-exec if EMACS_HEAP_EXEC
is already set (Bug#32083).
---
src/emacs.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/emacs.c b/src/emacs.c
index 017c62308c..f5e47428ef 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -707,10 +707,12 @@ main (int argc, char **argv)
bool disable_aslr = dumping;
# endif
- if (disable_aslr && disable_address_randomization ())
+ if (disable_aslr && disable_address_randomization ()
+ && !getenv ("EMACS_HEAP_EXEC"))
{
/* Set this so the personality will be reverted before execs
- after this one. */
+ after this one, and to work around an re-exec loop on buggy
+ kernels (Bug#32083). */
xputenv ("EMACS_HEAP_EXEC=true");
/* Address randomization was enabled, but is now disabled.
--
2.17.1
@@ -0,0 +1,96 @@
Support ImageMagick version 7.
https://bugs.gentoo.org/665058
https://debbugs.gnu.org/25967
This backports and consolidates the following commits from upstream git:
commit 3cc42bb60099c32f64e57d2ee33c8321adba7942
Author: Glenn Morris <rgm@gnu.org>
Date: Thu Aug 30 13:56:08 2018 -0400
* configure.ac: Fix goofs in my recent ImageMagick change.
commit 42ed35c68b7c199aa797e655fdc3547c5c3087d2
Author: Paul Eggert <eggert@cs.ucla.edu>
Date: Thu Aug 30 10:03:43 2018 -0700
Pacify -Wdouble-promotion in ImageMagick code
commit bf1b147b55e1328efca6e40181e79dd9a369895d
Author: Glenn Morris <rgm@gnu.org>
Date: Mon Aug 27 22:03:25 2018 -0400
* configure.ac, src/image.c: Tweak previous ImageMagick change.
commit 5729486951e6a60db55ea17ee3bac9baf8b54f6a
Author: Karl Otness <karl@karlotness.com>
Date: Mon Aug 27 21:57:44 2018 -0400
Support ImageMagick version 7 (bug#25967)
--- emacs-26.1-orig/configure.ac
+++ emacs-26.1/configure.ac
@@ -2521,11 +2521,14 @@
HAVE_IMAGEMAGICK=no
if test "${HAVE_X11}" = "yes" || test "${HAVE_NS}" = "yes" || test "${HAVE_W32}" = "yes"; then
if test "${with_imagemagick}" != "no"; then
- ## 6.3.5 is the earliest version known to work; see Bug#17339.
- ## 6.8.2 makes Emacs crash; see Bug#13867.
- ## 7 and later have not been ported to; See Bug#25967.
- IMAGEMAGICK_MODULE="Wand >= 6.3.5 Wand != 6.8.2 Wand < 7"
- EMACS_CHECK_MODULES([IMAGEMAGICK], [$IMAGEMAGICK_MODULE])
+ EMACS_CHECK_MODULES([IMAGEMAGICK], [MagickWand >= 7])
+ if test $HAVE_IMAGEMAGICK = yes; then
+ AC_DEFINE([HAVE_IMAGEMAGICK7], 1, [Define to 1 if using ImageMagick7.])
+ else
+ ## 6.3.5 is the earliest version known to work; see Bug#17339.
+ ## 6.8.2 makes Emacs crash; see Bug#13867.
+ EMACS_CHECK_MODULES([IMAGEMAGICK], [Wand >= 6.3.5 Wand != 6.8.2])
+ fi
if test $HAVE_IMAGEMAGICK = yes; then
OLD_CFLAGS=$CFLAGS
@@ -5399,7 +5402,7 @@
Does Emacs use -lrsvg-2? ${HAVE_RSVG}
Does Emacs use cairo? ${HAVE_CAIRO}
Does Emacs use -llcms2? ${HAVE_LCMS2}
- Does Emacs use imagemagick (version 6)? ${HAVE_IMAGEMAGICK}
+ Does Emacs use imagemagick? ${HAVE_IMAGEMAGICK}
Does Emacs support sound? ${HAVE_SOUND}
Does Emacs use -lgpm? ${HAVE_GPM}
Does Emacs use -ldbus? ${HAVE_DBUS}
--- emacs-26.1-orig/src/image.c
+++ emacs-26.1/src/image.c
@@ -8270,11 +8270,20 @@
/* The GIF library also defines DrawRectangle, but its never used in Emacs.
Therefore rename the function so it doesn't collide with ImageMagick. */
#define DrawRectangle DrawRectangleGif
-#include <wand/MagickWand.h>
+
+#ifdef HAVE_IMAGEMAGICK7
+# include <MagickWand/MagickWand.h>
+# include <MagickCore/version.h>
+/* ImageMagick 7 compatibility definitions. */
+# define PixelSetMagickColor PixelSetPixelColor
+typedef PixelInfo MagickPixelPacket;
+#else
+# include <wand/MagickWand.h>
+# include <magick/version.h>
+#endif
/* ImageMagick 6.5.3 through 6.6.5 hid PixelGetMagickColor for some reason.
Emacs seems to work fine with the hidden version, so unhide it. */
-#include <magick/version.h>
#if 0x653 <= MagickLibVersion && MagickLibVersion <= 0x665
extern WandExport void PixelGetMagickColor (const PixelWand *,
MagickPixelPacket *);
@@ -8799,7 +8808,8 @@
#endif /* HAVE_MAGICKEXPORTIMAGEPIXELS */
{
size_t image_height;
- MagickRealType color_scale = 65535.0 / QuantumRange;
+ double quantum_range = QuantumRange;
+ MagickRealType color_scale = 65535.0 / quantum_range;
/* Try to create a x pixmap to hold the imagemagick pixmap. */
if (!image_create_x_image_and_pixmap (f, img, width, height, 0,
+8 -1
View File
@@ -37,6 +37,13 @@
<Dependency>imagemagick-devel</Dependency>
<Dependency>lcms2-devel</Dependency>
</BuildDependencies>
<Patches>
<Patch>01_all_bootstrap-infloop.patch</Patch>
<Patch>02_all_imagemagick-7.patch</Patch>
<Patch>0001-Ignore-color-fonts-when-using-Xft.patch</Patch>
<Patch>0001-Port-FC_COLOR-change-to-older-fontconfig.patch</Patch>
<Patch>0001-src-ftfont.c-ftfont_spec_pattern-Fix-whitespace.patch</Patch>
</Patches>
</Source>
<Package>
@@ -105,7 +112,7 @@
<Update release="4">
<Date>2019-02-01</Date>
<Version>26.1</Version>
<Comment>Version Bump</Comment>
<Comment>Version Bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>