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.
This commit is contained in:
Jan D 2010-11-13 19:59:28 +01:00
parent a048073e24
commit 933e29ff5e
3 changed files with 18 additions and 5 deletions

View file

@ -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.

View file

@ -2528,8 +2528,11 @@ are ignored. */)
{
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 @@ x_send_client_event (Lisp_Object display, Lisp_Object dest, Lisp_Object from, At
struct frame *f = check_x_frame (from);
int to_root;
CHECK_STRING (message_type);
CHECK_NUMBER (format);
CHECK_CONS (values);

View file

@ -8380,8 +8380,9 @@ set_wm_state (Lisp_Object frame, int add, Atom atom, Atom value)
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 @@ x_term_init (Lisp_Object display_name, char *xrm_option, char *resource_name)
{ "_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 },