changeset 111530:d61a54d15a90

Fix Atoms and Lisp_Object mixup and related bugs. * src/xselect.c (x_send_client_event): Move CHECK_STRING ... (Fx_send_client_event): to here. * src/xterm.c (set_wm_state): Don't put Atom in cons, call make_fixnum_or_float on them first. (x_term_init): Initialize Xatom_net_supporting_wm_check and Xatom_net_supported correctly.
author Jan D <jan.h.d@swipnet.se>
date Sat, 13 Nov 2010 19:59:28 +0100
parents 589830c3f4cb
children 1674d1e74b95
files src/ChangeLog src/xselect.c src/xterm.c
diffstat 3 files changed, 18 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Sat Nov 13 13:49:22 2010 -0500
+++ b/src/ChangeLog	Sat Nov 13 19:59:28 2010 +0100
@@ -1,3 +1,13 @@
+2010-11-13  Jan Djärv  <jan.h.d@swipnet.se>
+
+	* xterm.c (set_wm_state): Don't put Atom in cons, call
+	make_fixnum_or_float on them first.
+	(x_term_init): Initialize Xatom_net_supporting_wm_check and
+	Xatom_net_supported correctly.
+
+	* xselect.c (x_send_client_event): Move CHECK_STRING ...
+	(Fx_send_client_event): to here.
+
 2010-11-13  Martin Rudalics  <rudalics@gmx.at>
 
 	* window.c (Fwindow_use_time): New function.
--- a/src/xselect.c	Sat Nov 13 13:49:22 2010 -0500
+++ b/src/xselect.c	Sat Nov 13 19:59:28 2010 +0100
@@ -2528,8 +2528,11 @@
 {
   struct x_display_info *dpyinfo = check_x_display_info (display);
 
+  CHECK_STRING (message_type);
   x_send_client_event(display, dest, from,
-                      XInternAtom (dpyinfo->display, SDATA (message_type), False),
+                      XInternAtom (dpyinfo->display,
+                                   SDATA (message_type),
+                                   False),
                       format, values);
 
   return Qnil;
@@ -2546,7 +2549,6 @@
   struct frame *f = check_x_frame (from);
   int to_root;
 
-  CHECK_STRING (message_type);
   CHECK_NUMBER (format);
   CHECK_CONS (values);
 
--- a/src/xterm.c	Sat Nov 13 13:49:22 2010 -0500
+++ b/src/xterm.c	Sat Nov 13 19:59:28 2010 +0100
@@ -8380,8 +8380,9 @@
                        Fcons
                        (make_number (add ? 1 : 0),
                         Fcons
-                        (atom,
-                         value != 0 ? value : Qnil)));
+                        (make_fixnum_or_float (atom),
+                         value != 0
+                         ? make_fixnum_or_float (value) : Qnil)));
 }
 
 void
@@ -10247,7 +10248,7 @@
       { "_NET_WM_ICON_NAME", &dpyinfo->Xatom_net_wm_icon_name },
       { "_NET_WM_NAME", &dpyinfo->Xatom_net_wm_name },
       { "_NET_SUPPORTED",  &dpyinfo->Xatom_net_supported },
-      { "_NET_SUPPORTING_WM_CHECK", &dpyinfo->Xatom_net_supported },
+      { "_NET_SUPPORTING_WM_CHECK", &dpyinfo->Xatom_net_supporting_wm_check },
       { "_NET_WM_WINDOW_OPACITY", &dpyinfo->Xatom_net_wm_window_opacity },
       { "_NET_ACTIVE_WINDOW", &dpyinfo->Xatom_net_active_window },
       { "_NET_FRAME_EXTENTS", &dpyinfo->Xatom_net_frame_extents },