[xemacs] Add -menubar patch to fix bz 890565.

Jerry James jjames at fedoraproject.org
Mon Jan 21 18:09:44 UTC 2013


commit 1df4ffb7d484925a918f3dbde8d0d8b0f9b65fe8
Author: Jerry James <jamesjer at betterlinux.com>
Date:   Mon Jan 21 11:09:27 2013 -0700

    Add -menubar patch to fix bz 890565.

 xemacs-21.5.33-menubar.patch |   31 +++++++++++++++++++++++++++++++
 xemacs.spec                  |    8 +++++++-
 2 files changed, 38 insertions(+), 1 deletions(-)
---
diff --git a/xemacs-21.5.33-menubar.patch b/xemacs-21.5.33-menubar.patch
new file mode 100644
index 0000000..abcd13b
--- /dev/null
+++ b/xemacs-21.5.33-menubar.patch
@@ -0,0 +1,31 @@
+--- src/menubar-x.c.orig	2013-01-04 09:57:15.000000000 -0700
++++ src/menubar-x.c	2013-01-21 10:55:55.316470308 -0700
+@@ -516,6 +516,9 @@ pre_activate_callback (Widget widget, LW
+     }
+ }
+ 
++/* Returns the converted menubar, or NULL if an error is encountered while
++ * converting the Lisp menu specification.
++ */
+ static widget_value *
+ compute_menubar_data (struct frame *f, Lisp_Object menubar, int deep_p)
+ {
+@@ -573,7 +576,8 @@ set_frame_menubar (struct frame *f, int
+     menubar_visible = !NILP (w->menubar_visible_p);
+ 
+   data = compute_menubar_data (f, menubar, deep_p);
+-  assert (data && (data->next || data->contents));
++  if (!data || (!data->next && !data->contents))
++    return 0;
+ 
+   if (!FRAME_X_MENUBAR_ID (f))
+     FRAME_X_MENUBAR_ID (f) = new_lwlib_id ();
+@@ -594,6 +598,8 @@ set_frame_menubar (struct frame *f, int
+ 	{
+ 	  free_popup_widget_value_tree (data);
+ 	  data = compute_menubar_data (f, menubar, 1);
++	  if (!data || (!data->next && !data->contents))
++	    return 0;
+ 	}
+ 
+ 
diff --git a/xemacs.spec b/xemacs.spec
index e1dfc47..eaf703a 100644
--- a/xemacs.spec
+++ b/xemacs.spec
@@ -21,7 +21,7 @@
 
 Name:           xemacs
 Version:        21.5.33
-Release:        2%{?snap:.%{snap}}%{?dist}
+Release:        3%{?snap:.%{snap}}%{?dist}
 Summary:        Different version of Emacs
 
 Group:          Applications/Editors
@@ -55,6 +55,8 @@ Patch3:         %{name}-21.5.27-no-expdyn-ia64-106744.patch
 Patch4:         %{name}-21.5.28-courier-default.patch
 # Fedora-specific.  Recognize the Fedora X server.
 Patch5:         %{name}-21.5.29-x-server.patch
+# Applied upstream.  Fix a crash if given a bad menu specification.
+Patch6:         %{name}-21.5.33-menubar.patch
 
 BuildRequires:  sed >= 3.95
 BuildRequires:  texinfo
@@ -243,6 +245,7 @@ sed -i -e /tetris/d lisp/menubar-items.el
 %patch3
 %patch4
 %patch5
+%patch6
 
 sed -i -e 's/"lib"/"%{_lib}"/' lisp/setup-paths.el
 
@@ -649,6 +652,9 @@ fi
 %dir %{_datadir}/xemacs/site-packages/pkginfo
 
 %changelog
+* Mon Jan 21 2013 Jerry James <loganjerry at gmail.com> - 21.5.33-3
+- Add -menubar patch to fix bz 890565
+
 * Mon Jan 21 2013 Adam Tkac <atkac redhat com> - 21.5.33-2
 - rebuild due to "jpeg8-ABI" feature drop
 


More information about the scm-commits mailing list