APPROVE COMMIT
NOTE: This patch has been committed
# HG changeset patch
# User Aidan Kehoe <kehoea(a)parhasard.net>
# Date 1550495334 0
#      Mon Feb 18 13:08:54 2019 +0000
# Node ID f1c4035664d73d7e5d0332811a402981461b87c2
# Parent  ddfa783ef44399fe343ae3af4c24ea92858c1250
Wrap some calls to Lisp as appropriate for redisplay, menubar-x.c
src/ChangeLog addition:
2019-02-18  Aidan Kehoe  <kehoea(a)parhasard.net>
	* menubar-x.c (menu_item_descriptor_to_widget_value_1):
	Wrap some calls to Lisp here, as appropriate for code run within
	redisplay.
diff -r ddfa783ef443 -r f1c4035664d7 src/ChangeLog
--- a/src/ChangeLog	Sun Dec 16 11:25:19 2018 +0000
+++ b/src/ChangeLog	Mon Feb 18 13:08:54 2019 +0000
@@ -1,3 +1,9 @@
+2019-02-18  Aidan Kehoe  <kehoea(a)parhasard.net>
+
+	* menubar-x.c (menu_item_descriptor_to_widget_value_1):
+	Wrap some calls to Lisp here, as appropriate for code run within
+	redisplay.
+
 2018-12-16  Aidan Kehoe  <kehoea(a)parhasard.net>
 
 	* redisplay.c (redisplay_window):
diff -r ddfa783ef443 -r f1c4035664d7 src/menubar-x.c
--- a/src/menubar-x.c	Sun Dec 16 11:25:19 2018 +0000
+++ b/src/menubar-x.c	Mon Feb 18 13:08:54 2019 +0000
@@ -198,14 +198,19 @@
 
 	  if ((!NILP (config_tag)
 	       && NILP (Fmemq (config_tag, Vmenubar_configuration)))
-	      || (included_spec && NILP (Feval (include_p))))
+              || (included_spec &&
+                  NILP (call1_trapping_problems ("Error with included spec",
+                                                 Qeval, include_p, 0))))
 	    {
 	      wv = NULL;
 	      goto menu_item_done;
 	    }
 
 	  if (active_spec)
-	    active_p = Feval (active_p);
+            {
+              active_p = call1_trapping_problems ("Error in menu filter",
+                                                  Qeval, active_p, 0);
+            }
 
 	  if (!NILP (hook_fn) && !NILP (active_p))
 	    {
@@ -213,7 +218,8 @@
 	      if (filter_p || depth == 0)
 		{
 #endif
-		  desc = call1 (hook_fn, desc);
+                  desc = call1_trapping_problems ("Error in menu filter",
+                                                  hook_fn, desc, 0);
 		  if (UNBOUNDP (desc))
 		    desc = Qnil;
 #if defined LWLIB_MENUBARS_LUCID || defined LWLIB_MENUBARS_MOTIF
-- 
‘As I sat looking up at the Guinness ad, I could never figure out /
How your man stayed up on the surfboard after forty pints of stout’
(C. Moore)
    
    
    
 
                    
                    
                        
                        Show replies by date