anymore; maybe this could be a hint.
> gcc --version
gcc (Debian 12.2.0-14) 12.2.0
> Can you check that 0x555555cf0b00 is a valid dpyinfo structure?
(gdb) info locals
event = 0x555555953aa0 <kbd_buffer+384>
copy = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55c82260, requestor = 0x555555f93a80, selection = 0x45, target = 0x4d, property = 0x5e, time = 0}
moved_events = <optimized out>
(gdb) x 0x555555c82260
0x555555c82260: 0x00
> Can you run "ptype/o struct selection_input_event" [...]
(gdb) ptype/o struct selection_input_event
/* offset | size */ type = struct selection_input_event {
/* 0: 0 | 4 */ enum event_kind kind : 16;
/* XXX 6-byte hole */
/* 8 | 8 */ struct pgtk_display_info *dpyinfo;
/* 16 | 8 */ GdkWindow *requestor;
/* 24 | 8 */ GdkAtom selection;
/* 32 | 8 */ GdkAtom target;
/* 40 | 8 */ GdkAtom property;
/* 48 | 4 */ guint32 time;
/* XXX 4-byte padding */
/* total size (bytes): 56 */
}
(gdb) ptype/o struct input_event
/* offset | size */ type = struct input_event {
/* 0: 0 | 4 */ enum event_kind kind : 16;
/* 2: 0 | 4 */ enum scroll_bar_part part : 16;
/* 4 | 4 */ unsigned int code;
/* 8 | 4 */ unsigned int modifiers;
/* XXX 4-byte hole */
/* 16 | 8 */ Lisp_Object x;
/* 24 | 8 */ Lisp_Object y;
/* 32 | 8 */ Time timestamp;
/* 40 | 8 */ Lisp_Object frame_or_window;
/* 48 | 8 */ Lisp_Object arg;
/* 56 | 8 */ Lisp_Object device;
/* total size (bytes): 64 */
}
(gdb) ptype/o union buffered_input_event
/* offset | size */ type = union buffered_input_event {
/* 4 */ enum event_kind kind : 16;
/* 64 */ struct input_event {
/* 0: 0 | 4 */ enum event_kind kind : 16;
/* 2: 0 | 4 */ enum scroll_bar_part part : 16;
/* 4 | 4 */ unsigned int code;
/* 8 | 4 */ unsigned int modifiers;
/* XXX 4-byte hole */
/* 16 | 8 */ Lisp_Object x;
/* 24 | 8 */ Lisp_Object y;
/* 32 | 8 */ Time timestamp;
/* 40 | 8 */ Lisp_Object frame_or_window;
/* 48 | 8 */ Lisp_Object arg;
/* 56 | 8 */ Lisp_Object device;
/* total size (bytes): 64 */
} ie;
/* 56 */ struct selection_input_event {
/* 0: 0 | 4 */ enum event_kind kind : 16;
/* XXX 6-byte hole */
/* 8 | 8 */ struct pgtk_display_info *dpyinfo;
/* 16 | 8 */ GdkWindow *requestor;
/* 24 | 8 */ GdkAtom selection;
/* 32 | 8 */ GdkAtom target;
--Type <RET> for more, q to quit, c to continue without paging--
/* 40 | 8 */ GdkAtom property;
/* 48 | 4 */ guint32 time;
/* XXX 4-byte padding */
/* total size (bytes): 56 */
} sie;
/* total size (bytes): 64 */
}