From: Andreas Schwab Date: Thu, 17 Feb 2005 12:50:08 +0000 (+0000) Subject: (Fx_disown_selection_internal): Use union of struct X-Git-Tag: ttn-vms-21-2-B4~2221 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=31df61d66239245c68d85d1bb485539034782bec;p=emacs.git (Fx_disown_selection_internal): Use union of struct input_event and struct selection_input_event to avoid aliasing issues. --- diff --git a/src/xselect.c b/src/xselect.c index 8d8efd8db8a..a49b6b89ee4 100644 --- a/src/xselect.c +++ b/src/xselect.c @@ -2189,7 +2189,10 @@ Disowning it means there is no such selection. */) { Time timestamp; Atom selection_atom; - struct selection_input_event event; + union { + struct selection_input_event sie; + struct input_event ie; + } event; Display *display; struct x_display_info *dpyinfo; struct frame *sf = SELECTED_FRAME (); @@ -2217,10 +2220,10 @@ Disowning it means there is no such selection. */) the selection owner to None. The NCD server does, the MIT Sun4 server doesn't. So we synthesize one; this means we might get two, but that's ok, because the second one won't have any effect. */ - SELECTION_EVENT_DISPLAY (&event) = display; - SELECTION_EVENT_SELECTION (&event) = selection_atom; - SELECTION_EVENT_TIME (&event) = timestamp; - x_handle_selection_clear ((struct input_event *) &event); + SELECTION_EVENT_DISPLAY (&event.sie) = display; + SELECTION_EVENT_SELECTION (&event.sie) = selection_atom; + SELECTION_EVENT_TIME (&event.sie) = timestamp; + x_handle_selection_clear (&event.ie); return Qt; }