30.0.50; PGTK copy + paste to other app problem

  • Done
  • quality assurance status badge
Details
4 participants
  • Andrew Tropin
  • Eli Zaretskii
  • Po Lu
  • Stefan Kangas
Owner
unassigned
Submitted by
Andrew Tropin
Severity
normal
A
A
Andrew Tropin wrote on 20 Mar 2023 11:33
(address . bug-gnu-emacs@gnu.org)
877cvbiuf9.fsf@trop.in
Hello dear maintainers!

I use pgtk emacs on wayland (sway) and a few months ago started facing a
problem with copy/pasting to ungoogled-chromium. Tried to find relevant
reports on bug-gun-emacs, but didn't succeed.

Way to reproduce and observed behavior:

0. guix shell emacs-next-pgtk (or build a fresh emacs with pgtk from master).
1. Launch emacs -Q.
2. Select any text and optionally copy it with M-w.
3. Paste it to chromium address bar with middle mouse or C-v if it was
copied with M-w.
4. Both chromium and emacs get frozen for some time.
5. After some time Emacs crashes, chromium unfreezes.
6. A few times I saw "waiting for reply from selection owner." in emacs
echo area, but can't reproduce it right now.

- The same workflow, but with foot terminal instead of emacs works fine.
- The same version of Emacs, but built without PGTK, works fine too:
guix shell emacs-next-tree-sitter -- emacs -Q
- Copy pasting from emacs-next-pgtk to alacritty and icecat works fine.

The report of this problem on bug-guix and a backtrace of segfault:

A temporary workaround we use (it solves M-w + C-v, but not selection +
middle mouse):

Let me know if I can provide any additional information or testing.


In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.24.30, cairo version 1.16.0)
System Description: Guix System

Configured using:
'configure
CONFIG_SHELL=/gnu/store/4y5m9lb8k3qkb1y9m02sw9w9a6hacd16-bash-minimal-5.1.8/bin/bash
SHELL=/gnu/store/4y5m9lb8k3qkb1y9m02sw9w9a6hacd16-bash-minimal-5.1.8/bin/bash
--prefix=/gnu/store/701xsj5ngwasz7i962q5mdyqklvfhvx0-emacs-next-pgtk-30.0.50-0.ac7ec87
--enable-fast-install --with-pgtk --with-modules --with-cairo
--with-native-compilation --disable-build-details'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP
NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER XIM GTK3 ZLIB

Important settings:
value of $EMACSLOADPATH: /home/bob/.guix-home/profile/share/emacs/site-lisp:/gnu/store/701xsj5ngwasz7i962q5mdyqklvfhvx0-emacs-next-pgtk-30.0.50-0.ac7ec87/share/emacs/30.0.50/lisp:/gnu/store/701xsj5ngwasz7i962q5mdyqklvfhvx0-emacs-next-pgtk-30.0.50-0.ac7ec87/share/emacs/30.0.50/lisp
value of $EMACSNATIVELOADPATH: /home/bob/.guix-home/profile/lib/emacs/native-site-lisp
value of $LANG: en_US.utf8
locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
line-number-mode: t
indent-tabs-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t

Memory information:
((conses 16 77880 5562)
(symbols 48 7125 0)
(strings 32 19872 2975)
(string-bytes 1 650293)
(vectors 16 16564)
(vector-slots 8 328550 6303)
(floats 8 27 24)
(intervals 56 222 0)
(buffers 984 11))

--
Best regards,
Andrew Tropin
P
(name . Andrew Tropin)(address . andrew@trop.in)(address . 62291@debbugs.gnu.org)
87edpj1y4r.fsf@yahoo.com
Andrew Tropin <andrew@trop.in> writes:

Toggle quote (26 lines)
> Hello dear maintainers!
>
> I use pgtk emacs on wayland (sway) and a few months ago started facing a
> problem with copy/pasting to ungoogled-chromium. Tried to find relevant
> reports on bug-gun-emacs, but didn't succeed.
>
> Way to reproduce and observed behavior:
>
> 0. guix shell emacs-next-pgtk (or build a fresh emacs with pgtk from master).
> 1. Launch emacs -Q.
> 2. Select any text and optionally copy it with M-w.
> 3. Paste it to chromium address bar with middle mouse or C-v if it was
> copied with M-w.
> 4. Both chromium and emacs get frozen for some time.
> 5. After some time Emacs crashes, chromium unfreezes.
> 6. A few times I saw "waiting for reply from selection owner." in emacs
> echo area, but can't reproduce it right now.
>
> - The same workflow, but with foot terminal instead of emacs works fine.
> - The same version of Emacs, but built without PGTK, works fine too:
> guix shell emacs-next-tree-sitter -- emacs -Q
> - Copy pasting from emacs-next-pgtk to alacritty and icecat works fine.
>
> The report of this problem on bug-guix and a backtrace of segfault:
> https://yhetil.org/guix-bugs/871qqwfr5d.fsf@trop.in/

Unfortunately, the backtrace is not helpful, because it does not include
symbols from the crashing Emacs.

Would you please run Emacs under GDB and reproduce the crash there?
Then, when Emacs crashes, type:

(gdb) bt

then type return, and send the output here. Thanks.
A
A
Andrew Tropin wrote on 20 Mar 2023 12:17
(name . Po Lu)(address . luangruo@yahoo.com)(address . 62291@debbugs.gnu.org)
871qljisd9.fsf@trop.in
On 2023-03-20 19:05, Po Lu wrote:

Toggle quote (38 lines)
> Andrew Tropin <andrew@trop.in> writes:
>
>> Hello dear maintainers!
>>
>> I use pgtk emacs on wayland (sway) and a few months ago started facing a
>> problem with copy/pasting to ungoogled-chromium. Tried to find relevant
>> reports on bug-gun-emacs, but didn't succeed.
>>
>> Way to reproduce and observed behavior:
>>
>> 0. guix shell emacs-next-pgtk (or build a fresh emacs with pgtk from master).
>> 1. Launch emacs -Q.
>> 2. Select any text and optionally copy it with M-w.
>> 3. Paste it to chromium address bar with middle mouse or C-v if it was
>> copied with M-w.
>> 4. Both chromium and emacs get frozen for some time.
>> 5. After some time Emacs crashes, chromium unfreezes.
>> 6. A few times I saw "waiting for reply from selection owner." in emacs
>> echo area, but can't reproduce it right now.
>>
>> - The same workflow, but with foot terminal instead of emacs works fine.
>> - The same version of Emacs, but built without PGTK, works fine too:
>> guix shell emacs-next-tree-sitter -- emacs -Q
>> - Copy pasting from emacs-next-pgtk to alacritty and icecat works fine.
>>
>> The report of this problem on bug-guix and a backtrace of segfault:
>> https://yhetil.org/guix-bugs/871qqwfr5d.fsf@trop.in/
>
> Unfortunately, the backtrace is not helpful, because it does not include
> symbols from the crashing Emacs.
>
> Would you please run Emacs under GDB and reproduce the crash there?
> Then, when Emacs crashes, type:
>
> (gdb) bt
>
> then type return, and send the output here. Thanks.

Sure!

Toggle snippet (37 lines)
#0 0x00007ffff71a9424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#1 0x00007ffff71af21b in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#2 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#3 0x00007ffff719b884 in g_object_dispatch_properties_changed () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#4 0x00007ffff719d834 in g_object_notify_by_pspec () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#5 0x00007ffff79afbcd in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
#6 0x00007ffff79de357 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
#7 0x00007ffff71974af in g_closure_invoke () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#8 0x00007ffff71a89e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#9 0x00007ffff71aed65 in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#10 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#11 0x00007ffff798ac04 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
#12 0x00007ffff784b37a in gtk_main_do_event () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
#13 0x00007ffff7ef23c5 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
#14 0x00007ffff7f4f352 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
#15 0x00007ffff70a34cb in g_main_context_dispatch () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libglib-2.0.so.0
#16 0x000000000064c548 in pgtk_read_socket ()
#17 0x0000000000515762 in gobble_input ()
#18 0x0000000000515b85 in unblock_input_to ()
#19 0x0000000000516a38 in timer_check ()
#20 0x0000000000516f75 in readable_events ()
#21 0x0000000000517138 in get_input_pending ()
#22 0x000000000051beb8 in detect_input_pending_run_timers ()
#23 0x00000000005f40c8 in wait_reading_process_output ()
#24 0x0000000000437bd0 in sit_for ()
#25 0x000000000051ea0f in read_char ()
#26 0x000000000051f2ed in read_key_sequence ()
#27 0x0000000000520f12 in command_loop_1 ()
#28 0x0000000000596757 in internal_condition_case ()
#29 0x000000000050d13a in command_loop_2 ()
#30 0x00000000005966b1 in internal_catch ()
#31 0x000000000050d0df in command_loop ()
#32 0x0000000000513f43 in recursive_edit_1 ()
#33 0x00000000005142ba in Frecursive_edit ()
#34 0x000000000042d022 in main ()

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmQYQOIACgkQIgjSCVjB
3rAk+w//bAFgRxj3SyepM1gpR8qbTTdBsA78ujJg3zDKWfLndbl9AYpFbSUvfXWL
xsIeTcznoo4ULDla/EM5GZ1NUZaCMJq2HghSjhSQCt9XhIjDt+ERFu1yWvwdG56V
zkS+NGnt45yaz4Swfp3b6SW8epycDPruBhTZj5bq8TqzeXPm5WV3Ovr8brAB0POj
6Mcv64RN7PI/4dUEX5Tw1W2mtYNelBQhb7b/l/B3yDRF6bD8MNrmzN7vNRAoESdE
W+RhWaRb+Ol75dXi4wTnjO7keLlqf05uKDyqAvDi2+joi+IkDgPRc7jnUap+lAHW
Rm3ML4rInJAFvyKbsUD6Ei1xCXTVuBNEEQ9AbG/bxBscyPNPRQUDu59AMrY1pwFX
ytlb91VSMCSyKqVXUWv0FnIhDMwXKrU99hLVSFVHr1u7G3ezyOxzczSsl6azC4RS
L6xxfBjabhxBHl6dNC+Fqe8rXaGjQTO01V3zV4xPl04bjQLLkYXBWvlju6zWAU3a
OViED965juOwDswbWKKS0BHkDRYsXPPlQ7xzZney+e7vkRoLjPzt/qzabmQUl1Bd
rdDdhr7/0TXqp6VZclXVSmr68t/BgVQUIEiv3QFkQT5CvFkuZ7NWnTGczxqwfFfW
0glfSLj05u5cZ56ypMC9AJdbuV34xvBVgsMyv0UvlEwFg5vOyaA=
=Ov9C
-----END PGP SIGNATURE-----

P
(name . Andrew Tropin)(address . andrew@trop.in)(address . 62291@debbugs.gnu.org)
875yav1twf.fsf@yahoo.com
Andrew Tropin <andrew@trop.in> writes:

Toggle quote (36 lines)
> #0 0x00007ffff71a9424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #1 0x00007ffff71af21b in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #2 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #3 0x00007ffff719b884 in g_object_dispatch_properties_changed () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #4 0x00007ffff719d834 in g_object_notify_by_pspec () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #5 0x00007ffff79afbcd in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
> #6 0x00007ffff79de357 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
> #7 0x00007ffff71974af in g_closure_invoke () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #8 0x00007ffff71a89e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #9 0x00007ffff71aed65 in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #10 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #11 0x00007ffff798ac04 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
> #12 0x00007ffff784b37a in gtk_main_do_event () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
> #13 0x00007ffff7ef23c5 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
> #14 0x00007ffff7f4f352 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
> #15 0x00007ffff70a34cb in g_main_context_dispatch () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libglib-2.0.so.0
> #16 0x000000000064c548 in pgtk_read_socket ()
> #17 0x0000000000515762 in gobble_input ()
> #18 0x0000000000515b85 in unblock_input_to ()
> #19 0x0000000000516a38 in timer_check ()
> #20 0x0000000000516f75 in readable_events ()
> #21 0x0000000000517138 in get_input_pending ()
> #22 0x000000000051beb8 in detect_input_pending_run_timers ()
> #23 0x00000000005f40c8 in wait_reading_process_output ()
> #24 0x0000000000437bd0 in sit_for ()
> #25 0x000000000051ea0f in read_char ()
> #26 0x000000000051f2ed in read_key_sequence ()
> #27 0x0000000000520f12 in command_loop_1 ()
> #28 0x0000000000596757 in internal_condition_case ()
> #29 0x000000000050d13a in command_loop_2 ()
> #30 0x00000000005966b1 in internal_catch ()
> #31 0x000000000050d0df in command_loop ()
> #32 0x0000000000513f43 in recursive_edit_1 ()
> #33 0x00000000005142ba in Frecursive_edit ()
> #34 0x000000000042d022 in main ()

Thanks. What this says is that GDK has emitted an event, which is being
dispatched to what it thinks is a widget, but either the widget's signal
handler or the widget itself is invalid, causing GObject to crash during
signal dispatch.

Would you please install debuginfo for libgdk-3.so.0, libgtk-3.so.0 and
libgobject-2.0.so.0 (I'm not sure how to this in the GuixSD) and try to
figure out what event is causing the crash?

I suggest going up to frame #12 and typing:

(gdb) p *event

after the debuginfo is installed and loaded by GDB.
A
A
Andrew Tropin wrote on 21 Mar 2023 10:10
(name . Po Lu)(address . luangruo@yahoo.com)(address . 62291@debbugs.gnu.org)
878rfqxyff.fsf@trop.in
On 2023-03-20 20:36, Po Lu wrote:

Toggle quote (53 lines)
> Andrew Tropin <andrew@trop.in> writes:
>
>> #0 0x00007ffff71a9424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #1 0x00007ffff71af21b in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #2 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #3 0x00007ffff719b884 in g_object_dispatch_properties_changed () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #4 0x00007ffff719d834 in g_object_notify_by_pspec () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #5 0x00007ffff79afbcd in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #6 0x00007ffff79de357 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #7 0x00007ffff71974af in g_closure_invoke () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #8 0x00007ffff71a89e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #9 0x00007ffff71aed65 in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #10 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #11 0x00007ffff798ac04 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #12 0x00007ffff784b37a in gtk_main_do_event () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #13 0x00007ffff7ef23c5 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
>> #14 0x00007ffff7f4f352 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
>> #15 0x00007ffff70a34cb in g_main_context_dispatch () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libglib-2.0.so.0
>> #16 0x000000000064c548 in pgtk_read_socket ()
>> #17 0x0000000000515762 in gobble_input ()
>> #18 0x0000000000515b85 in unblock_input_to ()
>> #19 0x0000000000516a38 in timer_check ()
>> #20 0x0000000000516f75 in readable_events ()
>> #21 0x0000000000517138 in get_input_pending ()
>> #22 0x000000000051beb8 in detect_input_pending_run_timers ()
>> #23 0x00000000005f40c8 in wait_reading_process_output ()
>> #24 0x0000000000437bd0 in sit_for ()
>> #25 0x000000000051ea0f in read_char ()
>> #26 0x000000000051f2ed in read_key_sequence ()
>> #27 0x0000000000520f12 in command_loop_1 ()
>> #28 0x0000000000596757 in internal_condition_case ()
>> #29 0x000000000050d13a in command_loop_2 ()
>> #30 0x00000000005966b1 in internal_catch ()
>> #31 0x000000000050d0df in command_loop ()
>> #32 0x0000000000513f43 in recursive_edit_1 ()
>> #33 0x00000000005142ba in Frecursive_edit ()
>> #34 0x000000000042d022 in main ()
>
> Thanks. What this says is that GDK has emitted an event, which is being
> dispatched to what it thinks is a widget, but either the widget's signal
> handler or the widget itself is invalid, causing GObject to crash during
> signal dispatch.
>
> Would you please install debuginfo for libgdk-3.so.0, libgtk-3.so.0 and
> libgobject-2.0.so.0 (I'm not sure how to this in the GuixSD) and try to
> figure out what event is causing the crash?
>
> I suggest going up to frame #12 and typing:
>
> (gdb) p *event
>
> after the debuginfo is installed and loaded by GDB.

Sorry for the long response, I was figuring out some GDB settings :)

For the record and maybe future readers, my ~/.gdbinit:
Toggle snippet (23 lines)
# Tell GDB where to look for separate debugging files.
guile
(use-modules (gdb))
(execute (string-append "set debug-file-directory "
(string-join
(filter file-exists?
(append
(if (getenv "GDB_DEBUG_FILE_DIRECTORY")
(list (getenv "GDB_DEBUG_FILE_DIRECTORY"))
'())
(list "~/.guix-home/profile/lib/debug"
"~/.guix-profile/lib/debug"
"/run/current-system/profile/lib/debug")))
":")))
end

# Authorize extensions found in the store, such as the
# pretty-printers of libstdc++.
set auto-load safe-path /gnu/store/*/lib
set history filename ~/.cache/gdb_history
set history save on

I run gdb the following way:

guix shell gdb glib:debug gtk+:debug emacs-next-pgtk \
--with-debug-info=emacs-next-pgtk -- \
gdb --args sh -c 'exec emacs -Q'

The result I got:
Toggle snippet (62 lines)
#0 0x00007ffff71a9424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#1 0x00007ffff71af21b in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#2 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#3 0x00007ffff719b884 in g_object_dispatch_properties_changed () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#4 0x00007ffff719d834 in g_object_notify_by_pspec () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#5 0x00007ffff79afbcd in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
#6 0x00007ffff79de357 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
#7 0x00007ffff71974af in g_closure_invoke () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#8 0x00007ffff71a89e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#9 0x00007ffff71aed65 in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#10 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
#11 0x00007ffff798ac04 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
#12 0x00007ffff784b37a in gtk_main_do_event () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
#13 0x00007ffff7ef23c5 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
#14 0x00007ffff7f4f352 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
#15 0x00007ffff70a34cb in g_main_context_dispatch () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libglib-2.0.so.0
#16 0x000000000064c548 in pgtk_read_socket (terminal=<optimized out>, hold_quit=0x7fffffffba00) at pgtkterm.c:3840
#17 pgtk_read_socket (terminal=<optimized out>, hold_quit=0x7fffffffba00) at pgtkterm.c:3819
#18 0x0000000000515762 in gobble_input () at keyboard.c:7416
#19 0x0000000000515b85 in handle_async_input () at keyboard.c:7647
#20 process_pending_signals () at keyboard.c:7661
#21 unblock_input_to (level=0) at keyboard.c:7676
#22 unblock_input_to (level=<optimized out>) at keyboard.c:7670
#23 0x0000000000516a38 in unblock_input () at keyboard.c:7695
#24 timer_check () at keyboard.c:4741
#25 0x0000000000516f75 in readable_events (flags=flags@entry=1) at keyboard.c:3523
#26 0x0000000000517138 in get_input_pending (flags=flags@entry=1) at keyboard.c:7366
#27 0x000000000051beb8 in detect_input_pending_run_timers (do_display=do_display@entry=true) at keyboard.c:10896
#28 0x00000000005f40c8 in wait_reading_process_output (time_limit=time_limit@entry=30, nsecs=nsecs@entry=0, read_kbd=read_kbd@entry=-1, do_display=do_display@entry=true,
wait_for_cell=wait_for_cell@entry=0x0, wait_proc=wait_proc@entry=0x0, just_wait_proc=<optimized out>) at process.c:5779
#29 0x0000000000437bd0 in sit_for (timeout=timeout@entry=0x7a, reading=reading@entry=true, display_option=display_option@entry=1) at dispnew.c:6256
#30 0x000000000051ea0f in read_char (commandflag=1, map=0xdecb23, prev_event=0x0, used_mouse_menu=0x7fffffffc55b, end_time=0x0) at lisp.h:759
#31 0x000000000051f2ed in read_key_sequence (keybuf=<optimized out>, prompt=0x0, dont_downcase_last=<optimized out>, can_return_switch_frame=true, fix_current_buffer=true,
prevent_redisplay=<optimized out>) at keyboard.c:10073
#32 0x0000000000520f12 in command_loop_1 () at lisp.h:1164
--Type <RET> for more, q to quit, c to continue without paging--
#33 0x0000000000596757 in internal_condition_case (bfun=bfun@entry=0x520d40 <command_loop_1>, handlers=handlers@entry=0x90, hfun=hfun@entry=0x514390 <cmd_error>) at eval.c:1474
#34 0x000000000050d13a in command_loop_2 (handlers=handlers@entry=0x90) at keyboard.c:1124
#35 0x00000000005966b1 in internal_catch (tag=tag@entry=0xfea0, func=func@entry=0x50d120 <command_loop_2>, arg=arg@entry=0x90) at eval.c:1197
#36 0x000000000050d0df in command_loop () at lisp.h:1164
#37 0x0000000000513f43 in recursive_edit_1 () at keyboard.c:711
#38 0x00000000005142ba in Frecursive_edit () at keyboard.c:794
#39 0x000000000042d022 in main (argc=<optimized out>, argv=<optimized out>) at emacs.c:2529
(gdb) frame 12
#12 0x00007ffff784b37a in gtk_main_do_event () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
(gdb) p *event
No symbol "event" in current context.
(gdb) p *event<TAB>
event_arm_timer event_head event_queue_insert_if_intersect_below_current_y[part]
event_callback event_inotify_data_drop event_queue_t
event_check event_insert_if_intersect_below_current_y event_source_type_table
event_dispatch event_kind event_to_kboard
event_free[part] event_listeners event_unmask_signal_data
event_free_inode_data event_log_delays eventfd
event_free_inotify_data event_make_inode_data eventfd@got[plt]
event_free_signal_data event_make_inotify_data eventfd@plt
event_funcs event_make_signal_data eventfd_read
event_gc_inode_data event_next_pending eventfd_write
event_gc_signal_data event_prepare
event_get_clock_data event_q

It complains `No symbol "event" in current context.`, am I did something
wrong?

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmQZdHQACgkQIgjSCVjB
3rDNihAAkicxkiZomBaacaNoJRJgduMDrk73tHMUxgUCVY8ev3rNb4DrCBdmQFk/
V/YPVuw44wVeQND2HvDvWXDR80gOBzvBWZHyAVX5FCpgrKzVnp2TyWvGBnzUTJ4o
0rWrB3AR5L1U+7wiInnmv962caS9IVbEMkdZD5ikWh02uCanmoWrjKxPSi3q/ZBP
/1oCn0SXas8XL4tKlRCp+lMBgS0R3/dhI3WQvF8whwb/zYze2EbkNJfjvN+kcYWE
QH10h+kcAecfLa4vZb9RUpgSVKXqFHa/4SsgDzggsP0iezZvvQ18w6hF+3mjilFi
dDfVrz4TGIpHHGfSqesWqh5EXiu0obVWbaPUO/98qZ77JRCk4YgO1xRyH6zZczCv
M/H34JWC0XQBvN91WzRCVWTFX5iJSeFngOOHNCLo+oKm8jTtpHHb8psEOtTHPNGo
JvDHWFRTvSzz8e5+kIb4Y3WAwf02wxamCbEfAp2m0Eooa8ZIyxW+CwD30gDtd/R8
PAn9EJ4T3CXBAxi6PPXrltFoWGZNOafeP3jEPm2zg287olWWiphu7atrwosgGLSy
iE4N7EBOd+kDG7SEwERaULH4o6UVcXhVEQ3TQU/kTdQAk3FLHpJoJ7kFbmWVAiyn
k3CJW8XQn+eePuEoBC/blKkxaCzaoW8FXrbg3bpv+DMSAWNiwjQ=
=/quX
-----END PGP SIGNATURE-----

P
(name . Andrew Tropin)(address . andrew@trop.in)(address . 62291@debbugs.gnu.org)
87o7omz99g.fsf@yahoo.com
Andrew Tropin <andrew@trop.in> writes:

Toggle quote (64 lines)
> #0 0x00007ffff71a9424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #1 0x00007ffff71af21b in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #2 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #3 0x00007ffff719b884 in g_object_dispatch_properties_changed () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #4 0x00007ffff719d834 in g_object_notify_by_pspec () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #5 0x00007ffff79afbcd in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
> #6 0x00007ffff79de357 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
> #7 0x00007ffff71974af in g_closure_invoke () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #8 0x00007ffff71a89e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #9 0x00007ffff71aed65 in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #10 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
> #11 0x00007ffff798ac04 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
> #12 0x00007ffff784b37a in gtk_main_do_event () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
> #13 0x00007ffff7ef23c5 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
> #14 0x00007ffff7f4f352 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
> #15 0x00007ffff70a34cb in g_main_context_dispatch () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libglib-2.0.so.0
> #16 0x000000000064c548 in pgtk_read_socket (terminal=<optimized out>, hold_quit=0x7fffffffba00) at pgtkterm.c:3840
> #17 pgtk_read_socket (terminal=<optimized out>, hold_quit=0x7fffffffba00) at pgtkterm.c:3819
> #18 0x0000000000515762 in gobble_input () at keyboard.c:7416
> #19 0x0000000000515b85 in handle_async_input () at keyboard.c:7647
> #20 process_pending_signals () at keyboard.c:7661
> #21 unblock_input_to (level=0) at keyboard.c:7676
> #22 unblock_input_to (level=<optimized out>) at keyboard.c:7670
> #23 0x0000000000516a38 in unblock_input () at keyboard.c:7695
> #24 timer_check () at keyboard.c:4741
> #25 0x0000000000516f75 in readable_events (flags=flags@entry=1) at keyboard.c:3523
> #26 0x0000000000517138 in get_input_pending (flags=flags@entry=1) at keyboard.c:7366
> #27 0x000000000051beb8 in detect_input_pending_run_timers (do_display=do_display@entry=true) at keyboard.c:10896
> #28 0x00000000005f40c8 in wait_reading_process_output (time_limit=time_limit@entry=30, nsecs=nsecs@entry=0, read_kbd=read_kbd@entry=-1, do_display=do_display@entry=true,
> wait_for_cell=wait_for_cell@entry=0x0, wait_proc=wait_proc@entry=0x0, just_wait_proc=<optimized out>) at process.c:5779
> #29 0x0000000000437bd0 in sit_for (timeout=timeout@entry=0x7a, reading=reading@entry=true, display_option=display_option@entry=1) at dispnew.c:6256
> #30 0x000000000051ea0f in read_char (commandflag=1, map=0xdecb23, prev_event=0x0, used_mouse_menu=0x7fffffffc55b, end_time=0x0) at lisp.h:759
> #31 0x000000000051f2ed in read_key_sequence (keybuf=<optimized out>, prompt=0x0, dont_downcase_last=<optimized out>, can_return_switch_frame=true, fix_current_buffer=true,
> prevent_redisplay=<optimized out>) at keyboard.c:10073
> #32 0x0000000000520f12 in command_loop_1 () at lisp.h:1164
> --Type <RET> for more, q to quit, c to continue without paging--
> #33 0x0000000000596757 in internal_condition_case (bfun=bfun@entry=0x520d40 <command_loop_1>, handlers=handlers@entry=0x90, hfun=hfun@entry=0x514390 <cmd_error>) at eval.c:1474
> #34 0x000000000050d13a in command_loop_2 (handlers=handlers@entry=0x90) at keyboard.c:1124
> #35 0x00000000005966b1 in internal_catch (tag=tag@entry=0xfea0, func=func@entry=0x50d120 <command_loop_2>, arg=arg@entry=0x90) at eval.c:1197
> #36 0x000000000050d0df in command_loop () at lisp.h:1164
> #37 0x0000000000513f43 in recursive_edit_1 () at keyboard.c:711
> #38 0x00000000005142ba in Frecursive_edit () at keyboard.c:794
> #39 0x000000000042d022 in main (argc=<optimized out>, argv=<optimized out>) at emacs.c:2529
> (gdb) frame 12
> #12 0x00007ffff784b37a in gtk_main_do_event () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
> (gdb) p *event
> No symbol "event" in current context.
> (gdb) p *event<TAB>
> event_arm_timer event_head event_queue_insert_if_intersect_below_current_y[part]
> event_callback event_inotify_data_drop event_queue_t
> event_check event_insert_if_intersect_below_current_y event_source_type_table
> event_dispatch event_kind event_to_kboard
> event_free[part] event_listeners event_unmask_signal_data
> event_free_inode_data event_log_delays eventfd
> event_free_inotify_data event_make_inode_data eventfd@got[plt]
> event_free_signal_data event_make_inotify_data eventfd@plt
> event_funcs event_make_signal_data eventfd_read
> event_gc_inode_data event_next_pending eventfd_write
> event_gc_signal_data event_prepare
> event_get_clock_data event_q
>
> It complains `No symbol "event" in current context.`, am I did something
> wrong?

Yes, you didn't get debug information loaded in GDB.

What does:

(gdb) info sharedlibrary

say?
A
A
Andrew Tropin wrote on 21 Mar 2023 14:25
(name . Po Lu)(address . luangruo@yahoo.com)(address . 62291@debbugs.gnu.org)
875yauz16m.fsf@trop.in
On 2023-03-21 18:30, Po Lu wrote:

Toggle quote (74 lines)
> Andrew Tropin <andrew@trop.in> writes:
>
>> #0 0x00007ffff71a9424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #1 0x00007ffff71af21b in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #2 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #3 0x00007ffff719b884 in g_object_dispatch_properties_changed () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #4 0x00007ffff719d834 in g_object_notify_by_pspec () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #5 0x00007ffff79afbcd in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #6 0x00007ffff79de357 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #7 0x00007ffff71974af in g_closure_invoke () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #8 0x00007ffff71a89e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #9 0x00007ffff71aed65 in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #10 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #11 0x00007ffff798ac04 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #12 0x00007ffff784b37a in gtk_main_do_event () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #13 0x00007ffff7ef23c5 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
>> #14 0x00007ffff7f4f352 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
>> #15 0x00007ffff70a34cb in g_main_context_dispatch () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libglib-2.0.so.0
>> #16 0x000000000064c548 in pgtk_read_socket (terminal=<optimized out>, hold_quit=0x7fffffffba00) at pgtkterm.c:3840
>> #17 pgtk_read_socket (terminal=<optimized out>, hold_quit=0x7fffffffba00) at pgtkterm.c:3819
>> #18 0x0000000000515762 in gobble_input () at keyboard.c:7416
>> #19 0x0000000000515b85 in handle_async_input () at keyboard.c:7647
>> #20 process_pending_signals () at keyboard.c:7661
>> #21 unblock_input_to (level=0) at keyboard.c:7676
>> #22 unblock_input_to (level=<optimized out>) at keyboard.c:7670
>> #23 0x0000000000516a38 in unblock_input () at keyboard.c:7695
>> #24 timer_check () at keyboard.c:4741
>> #25 0x0000000000516f75 in readable_events (flags=flags@entry=1) at keyboard.c:3523
>> #26 0x0000000000517138 in get_input_pending (flags=flags@entry=1) at keyboard.c:7366
>> #27 0x000000000051beb8 in detect_input_pending_run_timers (do_display=do_display@entry=true) at keyboard.c:10896
>> #28 0x00000000005f40c8 in wait_reading_process_output (time_limit=time_limit@entry=30, nsecs=nsecs@entry=0, read_kbd=read_kbd@entry=-1, do_display=do_display@entry=true,
>> wait_for_cell=wait_for_cell@entry=0x0, wait_proc=wait_proc@entry=0x0, just_wait_proc=<optimized out>) at process.c:5779
>> #29 0x0000000000437bd0 in sit_for (timeout=timeout@entry=0x7a, reading=reading@entry=true, display_option=display_option@entry=1) at dispnew.c:6256
>> #30 0x000000000051ea0f in read_char (commandflag=1, map=0xdecb23, prev_event=0x0, used_mouse_menu=0x7fffffffc55b, end_time=0x0) at lisp.h:759
>> #31 0x000000000051f2ed in read_key_sequence (keybuf=<optimized out>, prompt=0x0, dont_downcase_last=<optimized out>, can_return_switch_frame=true, fix_current_buffer=true,
>> prevent_redisplay=<optimized out>) at keyboard.c:10073
>> #32 0x0000000000520f12 in command_loop_1 () at lisp.h:1164
>> --Type <RET> for more, q to quit, c to continue without paging--
>> #33 0x0000000000596757 in internal_condition_case (bfun=bfun@entry=0x520d40 <command_loop_1>, handlers=handlers@entry=0x90, hfun=hfun@entry=0x514390 <cmd_error>) at eval.c:1474
>> #34 0x000000000050d13a in command_loop_2 (handlers=handlers@entry=0x90) at keyboard.c:1124
>> #35 0x00000000005966b1 in internal_catch (tag=tag@entry=0xfea0, func=func@entry=0x50d120 <command_loop_2>, arg=arg@entry=0x90) at eval.c:1197
>> #36 0x000000000050d0df in command_loop () at lisp.h:1164
>> #37 0x0000000000513f43 in recursive_edit_1 () at keyboard.c:711
>> #38 0x00000000005142ba in Frecursive_edit () at keyboard.c:794
>> #39 0x000000000042d022 in main (argc=<optimized out>, argv=<optimized out>) at emacs.c:2529
>> (gdb) frame 12
>> #12 0x00007ffff784b37a in gtk_main_do_event () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> (gdb) p *event
>> No symbol "event" in current context.
>> (gdb) p *event<TAB>
>> event_arm_timer event_head event_queue_insert_if_intersect_below_current_y[part]
>> event_callback event_inotify_data_drop event_queue_t
>> event_check event_insert_if_intersect_below_current_y event_source_type_table
>> event_dispatch event_kind event_to_kboard
>> event_free[part] event_listeners event_unmask_signal_data
>> event_free_inode_data event_log_delays eventfd
>> event_free_inotify_data event_make_inode_data eventfd@got[plt]
>> event_free_signal_data event_make_inotify_data eventfd@plt
>> event_funcs event_make_signal_data eventfd_read
>> event_gc_inode_data event_next_pending eventfd_write
>> event_gc_signal_data event_prepare
>> event_get_clock_data event_q
>>
>> It complains `No symbol "event" in current context.`, am I did something
>> wrong?
>
> Yes, you didn't get debug information loaded in GDB.
>
> What does:
>
> (gdb) info sharedlibrary
>
> say?

Toggle snippet (103 lines)
From To Syms Read Shared Object Library
0x00007ffff7fcf050 0x00007ffff7ff15ee Yes (*) /gnu/store/5h2w4qi9hk1qzzgi1w83220ydslinr4s-glibc-2.33/lib/ld-linux-x86-64.so.2
0x00007ffff769c070 0x00007ffff79e9936 Yes (*) /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
0x00007ffff7ee6190 0x00007ffff7f5efdd Yes (*) /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
0x00007ffff7ea9b20 0x00007ffff7eaf8c0 Yes (*) /gnu/store/1ijx88zsj8vbp72a2bc5vi2k525b3m21-pango-1.48.10/lib/libpangocairo-1.0.so.0
0x00007ffff7e61c80 0x00007ffff7e8711e Yes (*) /gnu/store/1ijx88zsj8vbp72a2bc5vi2k525b3m21-pango-1.48.10/lib/libpango-1.0.so.0
0x00007ffff751fec0 0x00007ffff75c462e Yes (*) /gnu/store/klcavahwyssm268jy3hr7wk4kz5ymgzs-harfbuzz-2.8.2/lib/libharfbuzz.so.0
0x00007ffff7e316b0 0x00007ffff7e3ed44 Yes (*) /gnu/store/n2iz3biwjgqf5lpcbcyzm6krdcvpl9wn-atk-2.36.0/lib/libatk-1.0.so.0
0x00007ffff750d0a0 0x00007ffff750e20d Yes (*) /gnu/store/j7msijipwyj8m6j7fdadwpai9k87j4fk-cairo-1.16.0/lib/libcairo-gobject.so.2
0x00007ffff73fc680 0x00007ffff74c3a97 Yes (*) /gnu/store/j7msijipwyj8m6j7fdadwpai9k87j4fk-cairo-1.16.0/lib/libcairo.so.2
0x00007ffff73c9b50 0x00007ffff73dccde Yes (*) /gnu/store/7zs12l3k07nic6v2ksx7amsyj4k5clv1-gdk-pixbuf-2.42.4/lib/libgdk_pixbuf-2.0.so.0
0x00007ffff721e980 0x00007ffff73267e6 Yes (*) /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgio-2.0.so.0
0x00007ffff7191760 0x00007ffff71be826 Yes (*) /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
0x00007ffff706ed40 0x00007ffff70f4a7e Yes (*) /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libglib-2.0.so.0
0x00007ffff6fd5dc0 0x00007ffff7018105 Yes (*) /gnu/store/qx38nc2wg6d5287pwbm2xnbk04nybnbc-libtiff-4.3.0/lib/libtiff.so.5
0x00007ffff6f39500 0x00007ffff6f8e0c5 Yes (*) /gnu/store/g5hf1zhqlcyx9vw3q1xa52bgddaqsfm5-libjpeg-turbo-2.0.5/lib/libjpeg.so.62
0x00007ffff6f05900 0x00007ffff6f2739a Yes (*) /gnu/store/1cb3vvxkhrsffkwa9kpgn9wv1s48vcd8-libpng-1.6.37/lib/libpng16.so.16
0x00007ffff6ee4320 0x00007ffff6ef5444 Yes (*) /gnu/store/v8d7j5i02nfz951x1szbl9xrd873vc3l-zlib-1.2.12/lib/libz.so.1
0x00007ffff6ed8390 0x00007ffff6edc58b Yes (*) /gnu/store/4d0ssibbd2glk1vc93zj738awmy22xad-giflib-5.2.1/lib/libgif.so.7
0x00007ffff6e0ecc0 0x00007ffff6e92bd6 Yes (*) /gnu/store/nfxcjvv9c2q6in9x52kkkayqv38k00ai-alsa-lib-1.2.4/lib/libasound.so.2
0x00007ffff6512070 0x00007ffff6a2df5c Yes (*) /gnu/store/pllwdhc04m0yixbz8svgw4mrj55l5l30-librsvg-2.50.7/lib/librsvg-2.so.2
0x00007ffff62cc200 0x00007ffff6362d11 Yes (*) /gnu/store/5h2w4qi9hk1qzzgi1w83220ydslinr4s-glibc-2.33/lib/libm.so.6
0x00007ffff6dd3370 0x00007ffff6dd7340 Yes (*) /gnu/store/a38k2v29l6l0iz6pmlk4dmzwdbvl10lq-acl-2.3.1/lib/libacl.so.1
0x00007ffff6dc93f0 0x00007ffff6dcc1b1 Yes (*) /gnu/store/5h2w4qi9hk1qzzgi1w83220ydslinr4s-glibc-2.33/lib/librt.so.1
0x00007ffff626dd20 0x00007ffff62a636a Yes (*) /gnu/store/5kwg6lh2nrvd7baya0lqj7047jsiashn-dbus-1.12.20/lib/libdbus-1.so.3
0x00007ffff6122bd0 0x00007ffff62068ce Yes (*) /gnu/store/59gqwyrp5wkj50gd49yjn1alha7yvrl9-libxml2-2.9.12/lib/libxml2.so.2
0x00007ffff6097cc0 0x00007ffff60d13e8 Yes (*) /gnu/store/9rrnm5hdjw7cy96a2a9rfgh6y08wsbmf-ncurses-6.2.20210619/lib/libncursesw.so.6
0x00007ffff6052f80 0x00007ffff6071dd1 Yes (*) /gnu/store/7iggw1173k98i4b13claciks6xl3b5i4-libselinux-3.4/lib/libselinux.so.1
0x00007ffff5fa79c0 0x00007ffff6018c0d Yes (*) /gnu/store/aiikc9rv0pcicgklvbfn8bni3rad7zb2-freetype-2.10.4/lib/libfreetype.so.6
0x00007ffff5f577a0 0x00007ffff5f7d05a Yes (*) /gnu/store/zmrcbfcwq56krlr4qj6flgy2q0x4vw75-fontconfig-minimal-2.13.94/lib/libfontconfig.so.1
0x00007ffff5f38230 0x00007ffff5f49380 Yes (*) /gnu/store/d9j6x2l4l4sya0zb3i168qkrzq8im1n7-libotf-0.9.16/lib/libotf.so.1
0x00007ffff5d76940 0x00007ffff5e89670 Yes (*) /gnu/store/zl9wf0zwq2ka9rpmayp53hnp2mn460xf-gnutls-3.7.2/lib/libgnutls.so.30
--Type <RET> for more, q to quit, c to continue without paging--
0x00007ffff5d22540 0x00007ffff5d2fba1 Yes (*) /gnu/store/5h2w4qi9hk1qzzgi1w83220ydslinr4s-glibc-2.33/lib/libpthread.so.0
0x00007ffff5d17200 0x00007ffff5d18301 Yes (*) /gnu/store/5h2w4qi9hk1qzzgi1w83220ydslinr4s-glibc-2.33/lib/libanl.so.1
0x00007ffff5cc3280 0x00007ffff5cf9bfa Yes (*) /gnu/store/75d5i0nfja1hr9kiqk5q1akpwkchgkv7-lcms-2.12/lib/liblcms2.so.2
0x00007ffff5cb2130 0x00007ffff5cb2f31 Yes (*) /gnu/store/5h2w4qi9hk1qzzgi1w83220ydslinr4s-glibc-2.33/lib/libdl.so.2
0x00007ffff5c1b830 0x00007ffff5c8537c Yes (*) /gnu/store/7sq4qp09fl1pn72jw828ndm13nbpknhv-elogind-246.10/lib/libelogind.so.0
0x00007ffff5bfb1f0 0x00007ffff5c02f2b Yes (*) /gnu/store/nprljhh7a86351vg6h23va3kfdnkwnd4-jansson-2.13.1/lib/libjansson.so.4
0x00007ffff5b6d440 0x00007ffff5bde0ab Yes (*) /gnu/store/fwbiihd2sbhai63y1pvvdh0f2bakfzrf-gmp-6.2.1/lib/libgmp.so.10
0x00007ffff4219c50 0x00007ffff508025e Yes (*) /gnu/store/j8wlnhzkzsza37c7dnvayxanfvfp58av-libgccjit-10.3.0/lib/libgccjit.so.0
0x00007ffff5b2c8c0 0x00007ffff5b4fe83 Yes (*) /gnu/store/cbviswij2rbqnbsc889166wm7ri5pc2r-tree-sitter-0.20.7/lib/libtree-sitter.so.0
0x00007ffff3ed5ca0 0x00007ffff3fc4c36 Yes (*) /gnu/store/xmzx5mzv4863yw9kmr2ykndgp37p8if0-sqlite-3.36.0/lib/libsqlite3.so.0
0x00007ffff5b10310 0x00007ffff5b20b1d Yes (*) /gnu/store/094bbaq6glba86h1d4cj16xhdi6fk2jl-gcc-10.3.0-lib/lib/libgcc_s.so.1
0x00007ffff3d25330 0x00007ffff3e64389 Yes (*) /gnu/store/5h2w4qi9hk1qzzgi1w83220ydslinr4s-glibc-2.33/lib/libc.so.6
0x00007ffff5b07100 0x00007ffff5b079ec Yes (*) /gnu/store/6h8skg2n4gpbi0bwfmw6qyh03phic6dm-libxinerama-1.1.4/lib/libXinerama.so.1
0x00007ffff5afb210 0x00007ffff5b011f5 Yes (*) /gnu/store/25k894kwhf4ljw1nl9rz6rm0c9sz5qaz-libxrandr-1.5.2/lib/libXrandr.so.2
0x00007ffff5af05e0 0x00007ffff5af4e37 Yes (*) /gnu/store/mx0bsijgajia8b0s7zfsc135ichy111d-libxcursor-1.2.0/lib/libXcursor.so.1
0x00007ffff5addf50 0x00007ffff5ae5f35 Yes (*) /gnu/store/cyjff1kx60h5z41jmxdzmac71ayxj5m5-libcloudproviders-minimal-0.3.1/lib/libcloudproviders.so.0
0x00007ffff5ad1260 0x00007ffff5ad2183 Yes (*) /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgmodule-2.0.so.0
0x00007ffff5abf260 0x00007ffff5ac9242 Yes (*) /gnu/store/3s0xcy15rkh08y8cd50skbs5b4js8zb5-libxi-1.7.10/lib/libXi.so.6
0x00007ffff5ab60c0 0x00007ffff5ab6aa5 Yes (*) /gnu/store/qzyp6p8gmxlpvd7wmijz5zn3cqmg4342-libxcomposite-0.4.5/lib/libXcomposite.so.1
0x00007ffff5ab10f0 0x00007ffff5ab1a3b Yes (*) /gnu/store/i4yh9pwl39qvl9nf8q48gmjgq3wxi36b-libxdamage-1.1.5/lib/libXdamage.so.1
0x00007ffff5aa91b0 0x00007ffff5aab576 Yes (*) /gnu/store/7rwz6yjir4ysnhskcw5k8azksjwqd6pa-libxfixes-6.0.0/lib/libXfixes.so.3
0x00007ffff3c66590 0x00007ffff3ce7bce Yes (*) /gnu/store/j8x167zaka2h6pxk7wiq5zkg67hzf8a2-pixman-0.40.0/lib/libpixman-1.so.0
0x00007ffff5aa3080 0x00007ffff5aa3923 Yes (*) /gnu/store/v8raqm2shh9azkl71107p53j55hir306-libxcb-1.14/lib/libxcb-shm.so.0
0x00007ffff5a96220 0x00007ffff5a9a17e Yes (*) /gnu/store/v8raqm2shh9azkl71107p53j55hir306-libxcb-1.14/lib/libxcb-render.so.0
0x00007ffff5a85260 0x00007ffff5a8b05d Yes (*) /gnu/store/jh778dla5w316bsfc63q8fnhn87j81lw-libxrender-0.9.10/lib/libXrender.so.1
0x00007ffff5a733c0 0x00007ffff5a7cd0a Yes (*) /gnu/store/4fhg8f8c6q647v7pysbng3j30frg0hcl-libxext-1.3.4/lib/libXext.so.6
0x00007ffff3b3a8f0 0x00007ffff3bbe5ea Yes (*) /gnu/store/fa43ijbrb96x08621qigxxiphp503lsi-libx11-1.7.3.1/lib/libX11.so.6
0x00007ffff3afe710 0x00007ffff3b0e4d5 Yes (*) /gnu/store/v8raqm2shh9azkl71107p53j55hir306-libxcb-1.14/lib/libxcb.so.1
0x00007ffff5a6b1f0 0x00007ffff5a6bd8e Yes (*) /gnu/store/9k6slxs8ynz46h85bcy3zk2mx0nn8rpf-libxau-1.0.9/lib/libXau.so.6
0x00007ffff5a621c0 0x00007ffff5a63912 Yes (*) /gnu/store/dfzp4rhkzqqagx3djn2kcnaflz1m8446-libxdmcp-1.1.3/lib/libXdmcp.so.6
0x00007ffff3adc870 0x00007ffff3ae9d9b Yes (*) /gnu/store/7b5qsjh2cbhwnqbdicvl81496k7b0g0j-libbsd-0.10.0/lib/libbsd.so.0
0x00007ffff3ab0cf0 0x00007ffff3ac48fe Yes (*) /gnu/store/nplkqbp4fvwzq0hvcq32js3nyj8rni1p-at-spi2-atk-2.38.0/lib/libatk-bridge-2.0.so.0
--Type <RET> for more, q to quit, c to continue without paging--
0x00007ffff3a614d0 0x00007ffff3a7c3c3 Yes (*) /gnu/store/bahr69aixvy64q43a6a57q3b92s243xq-libxkbcommon-1.3.0/lib/libxkbcommon.so.0
0x00007ffff3a54260 0x00007ffff3a55ef4 Yes (*) /gnu/store/gyxsakza7gjbsg4iaj25c48fx1z6c8k4-wayland-1.20.0/lib/libwayland-cursor.so.0
0x00007ffff3a4e060 0x00007ffff3a4e1e5 Yes (*) /gnu/store/gyxsakza7gjbsg4iaj25c48fx1z6c8k4-wayland-1.20.0/lib/libwayland-egl.so.1
0x00007ffff3a41490 0x00007ffff3a46312 Yes (*) /gnu/store/gyxsakza7gjbsg4iaj25c48fx1z6c8k4-wayland-1.20.0/lib/libwayland-client.so.0
0x00007ffff396a120 0x00007ffff39ccca4 Yes (*) /gnu/store/8hxznjcdh24harp8228dh9jl35mpdpwc-libepoxy-1.5.10/lib/libepoxy.so.0
0x00007ffff38e9170 0x00007ffff38ed1c1 Yes (*) /gnu/store/v5x6f3dml69pmn4pfkl51j6y03v6rlsg-fribidi-1.0.9/lib/libfribidi.so.0
0x00007ffff38d6110 0x00007ffff38df9ab Yes (*) /gnu/store/1ijx88zsj8vbp72a2bc5vi2k525b3m21-pango-1.48.10/lib/libpangoft2-1.0.so.0
0x00007ffff38ad190 0x00007ffff38c4aba Yes (*) /gnu/store/z6d288h1g876vypda400nhh224yz49im-graphite2-1.3.13/lib/libgraphite2.so.3
0x00007ffff387d190 0x00007ffff389a863 Yes (*) /gnu/store/52zhpralb3iimrm7xbc1vf3qsy4gy1vl-expat-2.4.9/lib/libexpat.so.1
0x00007ffff38682c0 0x00007ffff38742d2 Yes (*) /gnu/store/s3hl12jxz9ybs7nsy7kq7ybzz7qnzmsg-bzip2-1.0.8/lib/libbz2.so.1.0
0x00007ffff385d280 0x00007ffff3860b43 Yes (*) /gnu/store/2zlx5p93icsrqvc0w3lzgkc6dd3wd4jl-libthai-0.1.28/lib/libthai.so.0
0x00007ffff38089f0 0x00007ffff38402ae Yes (*) /gnu/store/cw542z2xn36m52baflr8mb7l6y9lgic3-util-linux-2.37.2-lib/lib/libmount.so.1
0x00007ffff37e63b0 0x00007ffff37f2e71 Yes (*) /gnu/store/5h2w4qi9hk1qzzgi1w83220ydslinr4s-glibc-2.33/lib/libresolv.so.2
0x00007ffff37d72b0 0x00007ffff37dd06e Yes (*) /gnu/store/wgqhlc12qvlwiklam7hz2r311fdcqfim-libffi-3.3/lib/libffi.so.7
0x00007ffff375f1d0 0x00007ffff37b3a14 Yes (*) /gnu/store/di5bqb45hi5lvp2q08hlxqjdcl9phjb1-pcre-8.45/lib/libpcre.so.1
0x00007ffff3738500 0x00007ffff374efe2 Yes (*) /gnu/store/c8isj4jq6knv0icfgr43di6q3nvdzkx7-xz-5.2.5/lib/liblzma.so.5
0x00007ffff372c290 0x00007ffff372e15a Yes (*) /gnu/store/jkjs0inmzhj4vsvclbf08nmh0shm7lrf-attr-2.5.1/lib/libattr.so.1
0x00007ffff3694260 0x00007ffff36fe2f6 Yes (*) /gnu/store/mqz2h2v1i7lx555yaz89sqd06kpgdr62-pcre2-10.37/lib/libpcre2-8.so.0
0x00007ffff358a870 0x00007ffff361e13c Yes (*) /gnu/store/x1jd7pqfn9ilb6x97azcfq1fhjr63p0z-p11-kit-0.23.22/lib/libp11-kit.so.0
0x00007ffff353f300 0x00007ffff3542f7a Yes (*) /gnu/store/fjq8aca46v502mrgvrfhvif0xb6m4fz0-libidn2-2.3.1/lib/libidn2.so.0
0x00007ffff33cb0a0 0x00007ffff33fd77e Yes (*) /gnu/store/hkhbq2q1gfs970gsp2nhsmcqb4vmv2xr-libunistring-0.9.10/lib/libunistring.so.2
0x00007ffff33a6340 0x00007ffff33b0ebf Yes (*) /gnu/store/4gcznd9r1r3hlmkb2m7s1a37radgnspn-libtasn1-4.17.0/lib/libtasn1.so.6
0x00007ffff3368c20 0x00007ffff3388b68 Yes (*) /gnu/store/manq4lcakkcakcg14rsi7467qw4c5frj-nettle-3.7.3/lib/libnettle.so.8
0x00007ffff331cee0 0x00007ffff332de5d Yes (*) /gnu/store/manq4lcakkcakcg14rsi7467qw4c5frj-nettle-3.7.3/lib/libhogweed.so.6
0x00007ffff33094c0 0x00007ffff330d6c6 Yes (*) /gnu/store/a7ggx0af69gv4k5mr1k617p4vy9kgx2v-libcap-2.62/lib/libcap.so.2
0x00007ffff30743a0 0x00007ffff319e417 Yes (*) /gnu/store/ajw8nnrnd6hr183skwqdgc8c7mazg97h-isl-0.23/lib/libisl.so.23
0x00007ffff32edcf0 0x00007ffff32fec34 Yes (*) /gnu/store/ba02g5xkqiss6s5z8mbj9cvkal6l7b9g-mpc-1.2.1/lib/libmpc.so.3
0x00007ffff2c10500 0x00007ffff2c98630 Yes (*) /gnu/store/pmq05n0q25v4qjyibxfrp53v4391k7vh-mpfr-4.1.0/lib/libmpfr.so.6
0x00007ffff32bc760 0x00007ffff32d1248 Yes (*) /gnu/store/bhgmja3j0s22m9ac7kph9zmmxm6540ly-at-spi2-core-2.40.0/lib/libatspi.so.0
0x00007ffff32a2200 0x00007ffff32a57f4 Yes (*) /gnu/store/qlz21x91bs9n3f8nangfsk6g5rfqxvaz-libdatrie-0.2.13/lib/libdatrie.so.1
0x00007ffff3257e80 0x00007ffff32887de Yes (*) /gnu/store/cw542z2xn36m52baflr8mb7l6y9lgic3-util-linux-2.37.2-lib/lib/libblkid.so.1
0x00007ffff2ee4060 0x00007ffff2f2ac40 Yes (*) /gnu/store/53i9x21a95h60fxkisvai94l9zmw1zgs-emacs-next-pgtk-30.0.50-0.ac7ec87/bin/../lib/emacs/30.0.50/native-lisp/30.0.50---Type <RET> for more, q to quit, c to continue without paging--
e9a90b77/preloaded/window-0d1b8b93-4fa40494.eln
0x00007ffff1ca7060 0x00007ffff1cc2007 Yes (*) /gnu/store/53i9x21a95h60fxkisvai94l9zmw1zgs-emacs-next-pgtk-30.0.50-0.ac7ec87/bin/../lib/emacs/30.0.50/native-lisp/30.0.50-e9a90b77/preloaded/mouse-15f283fa-65a06e63.eln
0x00007ffff1bed090 0x00007ffff1c186f6 Yes (*) /gnu/store/53i9x21a95h60fxkisvai94l9zmw1zgs-emacs-next-pgtk-30.0.50-0.ac7ec87/bin/../lib/emacs/30.0.50/native-lisp/30.0.50-e9a90b77/preloaded/subr-13adf6a6-fb11dd87.eln
0x00007ffff3221060 0x00007ffff322af79 Yes (*) /gnu/store/53i9x21a95
This message was truncated. Download the full message here.
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmQZsEEACgkQIgjSCVjB
3rCUMw/9FlZIbyEfW610mnePPPwLYsL3kBBtfhaJNlLc7rfuD56cjVFd8iadYSMG
mCGhXVW1GGKaEqk/MSXOmlsBMaptalmRNrEMWewLDildFppcQZkiiJwHbO16LjEY
tU1agaP47NEapXhP3/BzyoOFzLvEnwrjF5oRGvTdhOwiw9CAI/Uv+k4YcR/53NmK
RX7OGWj/P9Uma3ZppldaWA6bP35fQtNnT35SUh6n7dOjSjAdQTXZunle4KNdt7CO
F6dBcLxqWsDRCinZKS+a+j4+Q6I2osSdMPqvRU2+13aqSOYsQKRckZ1glfX5/57+
aMzsmUH8VCMi27x6Ym0rtDuudnhzwedP6e278q/zYguOD2K0mT777KeyL2/SPp+z
N+ZZKVVEcPDuecwsMt4gS/ejA46Cpl07BewXpiYFQwTdGz3HN0J2brKgN4bXKkjO
JuF/TGArbCsrOWUsA+p0FVOJTRjmfCQL0m9vSaFq3ta3eDGScwV/c5t7hzZXq2eT
MCRhQMieCxdRDdik3QaGCfkx4Tw1P/JJy6R+meWki9t3CwiRNrypEBHKdbEzRV14
Wqd97WDe+kuxU6Q4c8hNQw9L5l834grfvVWHWSiXFR0hWtgimwZZ3YT6qE/79lHx
l9D8+0Mx55vEbWO6rSGCDIqTGBu0M83/b+XhnvgI0H44g/kDCHs=
=1668
-----END PGP SIGNATURE-----

A
A
Andrew Tropin wrote on 21 Mar 2023 17:13
(name . Po Lu)(address . luangruo@yahoo.com)(address . 62291@debbugs.gnu.org)
877cvaw09c.fsf@trop.in
On 2023-03-21 18:30, Po Lu wrote:

Toggle quote (74 lines)
> Andrew Tropin <andrew@trop.in> writes:
>
>> #0 0x00007ffff71a9424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #1 0x00007ffff71af21b in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #2 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #3 0x00007ffff719b884 in g_object_dispatch_properties_changed () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #4 0x00007ffff719d834 in g_object_notify_by_pspec () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #5 0x00007ffff79afbcd in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #6 0x00007ffff79de357 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #7 0x00007ffff71974af in g_closure_invoke () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #8 0x00007ffff71a89e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #9 0x00007ffff71aed65 in g_signal_emit_valist () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #10 0x00007ffff71af722 in g_signal_emit () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libgobject-2.0.so.0
>> #11 0x00007ffff798ac04 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #12 0x00007ffff784b37a in gtk_main_do_event () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> #13 0x00007ffff7ef23c5 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
>> #14 0x00007ffff7f4f352 in ?? () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgdk-3.so.0
>> #15 0x00007ffff70a34cb in g_main_context_dispatch () from /gnu/store/ginkhx2irsi4qwkpnnwg4r30h7jwhi62-glib-2.70.2/lib/libglib-2.0.so.0
>> #16 0x000000000064c548 in pgtk_read_socket (terminal=<optimized out>, hold_quit=0x7fffffffba00) at pgtkterm.c:3840
>> #17 pgtk_read_socket (terminal=<optimized out>, hold_quit=0x7fffffffba00) at pgtkterm.c:3819
>> #18 0x0000000000515762 in gobble_input () at keyboard.c:7416
>> #19 0x0000000000515b85 in handle_async_input () at keyboard.c:7647
>> #20 process_pending_signals () at keyboard.c:7661
>> #21 unblock_input_to (level=0) at keyboard.c:7676
>> #22 unblock_input_to (level=<optimized out>) at keyboard.c:7670
>> #23 0x0000000000516a38 in unblock_input () at keyboard.c:7695
>> #24 timer_check () at keyboard.c:4741
>> #25 0x0000000000516f75 in readable_events (flags=flags@entry=1) at keyboard.c:3523
>> #26 0x0000000000517138 in get_input_pending (flags=flags@entry=1) at keyboard.c:7366
>> #27 0x000000000051beb8 in detect_input_pending_run_timers (do_display=do_display@entry=true) at keyboard.c:10896
>> #28 0x00000000005f40c8 in wait_reading_process_output (time_limit=time_limit@entry=30, nsecs=nsecs@entry=0, read_kbd=read_kbd@entry=-1, do_display=do_display@entry=true,
>> wait_for_cell=wait_for_cell@entry=0x0, wait_proc=wait_proc@entry=0x0, just_wait_proc=<optimized out>) at process.c:5779
>> #29 0x0000000000437bd0 in sit_for (timeout=timeout@entry=0x7a, reading=reading@entry=true, display_option=display_option@entry=1) at dispnew.c:6256
>> #30 0x000000000051ea0f in read_char (commandflag=1, map=0xdecb23, prev_event=0x0, used_mouse_menu=0x7fffffffc55b, end_time=0x0) at lisp.h:759
>> #31 0x000000000051f2ed in read_key_sequence (keybuf=<optimized out>, prompt=0x0, dont_downcase_last=<optimized out>, can_return_switch_frame=true, fix_current_buffer=true,
>> prevent_redisplay=<optimized out>) at keyboard.c:10073
>> #32 0x0000000000520f12 in command_loop_1 () at lisp.h:1164
>> --Type <RET> for more, q to quit, c to continue without paging--
>> #33 0x0000000000596757 in internal_condition_case (bfun=bfun@entry=0x520d40 <command_loop_1>, handlers=handlers@entry=0x90, hfun=hfun@entry=0x514390 <cmd_error>) at eval.c:1474
>> #34 0x000000000050d13a in command_loop_2 (handlers=handlers@entry=0x90) at keyboard.c:1124
>> #35 0x00000000005966b1 in internal_catch (tag=tag@entry=0xfea0, func=func@entry=0x50d120 <command_loop_2>, arg=arg@entry=0x90) at eval.c:1197
>> #36 0x000000000050d0df in command_loop () at lisp.h:1164
>> #37 0x0000000000513f43 in recursive_edit_1 () at keyboard.c:711
>> #38 0x00000000005142ba in Frecursive_edit () at keyboard.c:794
>> #39 0x000000000042d022 in main (argc=<optimized out>, argv=<optimized out>) at emacs.c:2529
>> (gdb) frame 12
>> #12 0x00007ffff784b37a in gtk_main_do_event () from /gnu/store/1y2rd23xx129v1y0qglijws0s208aj8p-gtk+-3.24.30/lib/libgtk-3.so.0
>> (gdb) p *event
>> No symbol "event" in current context.
>> (gdb) p *event<TAB>
>> event_arm_timer event_head event_queue_insert_if_intersect_below_current_y[part]
>> event_callback event_inotify_data_drop event_queue_t
>> event_check event_insert_if_intersect_below_current_y event_source_type_table
>> event_dispatch event_kind event_to_kboard
>> event_free[part] event_listeners event_unmask_signal_data
>> event_free_inode_data event_log_delays eventfd
>> event_free_inotify_data event_make_inode_data eventfd@got[plt]
>> event_free_signal_data event_make_inotify_data eventfd@plt
>> event_funcs event_make_signal_data eventfd_read
>> event_gc_inode_data event_next_pending eventfd_write
>> event_gc_signal_data event_prepare
>> event_get_clock_data event_q
>>
>> It complains `No symbol "event" in current context.`, am I did something
>> wrong?
>
> Yes, you didn't get debug information loaded in GDB.
>
> What does:
>
> (gdb) info sharedlibrary
>
> say?

Ok, with the help of apteryx, I was able to figure it out, there were a
problem in grafts mechanism, so A proper command is:

guix shell gdb emacs-next-pgtk --with-debug-info=emacs-next-pgtk \
--with-debug-info=gtk+ --with-debug-info=glib --no-grafts

The output is here:
Toggle snippet (28 lines)
(gdb) frame 12
#12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xfee500, event=event@entry=0xfdb4a0) at gtkwidget.c:7808
7808 in gtkwidget.c
(gdb) p *event
$3 = {type = GDK_FOCUS_CHANGE, any = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000'}, expose = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
send_event = 0 '\000', area = {x = 0, y = 0, width = 0, height = 0}, region = 0x0, count = 0}, visibility = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
send_event = 0 '\000', state = GDK_VISIBILITY_UNOBSCURED}, motion = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0, axes = 0x0,
state = 0, is_hint = 0, device = 0x0, x_root = 0, y_root = 0}, button = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0,
axes = 0x0, state = 0, button = 0, device = 0x0, x_root = 0, y_root = 0}, touch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0,
y = 0, axes = 0x0, state = 0, sequence = 0x0, emulating_pointer = 0, device = 0x0, x_root = 0, y_root = 0}, scroll = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
send_event = 0 '\000', time = 0, x = 0, y = 0, state = 0, direction = GDK_SCROLL_UP, device = 0x0, x_root = 0, y_root = 0, delta_x = 0, delta_y = 0, is_stop = 0}, key = {
type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, state = 0, keyval = 0, length = 0, string = 0x0, hardware_keycode = 0, group = 0 '\000',
is_modifier = 0}, crossing = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', subwindow = 0x0, time = 0, x = 0, y = 0, x_root = 0, y_root = 0,
mode = GDK_CROSSING_NORMAL, detail = GDK_NOTIFY_ANCESTOR, focus = 0, state = 0}, focus_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', in = 1},
configure = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', x = 0, y = 0, width = 0, height = 0}, property = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
send_event = 0 '\000', atom = 0x0, time = 0, state = 0}, selection = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', selection = 0x0, target = 0x0,
property = 0x0, time = 0, requestor = 0x0}, owner_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', owner = 0x0,
reason = GDK_OWNER_CHANGE_NEW_OWNER, selection = 0x0, time = 0, selection_time = 0}, proximity = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
time = 0, device = 0x0}, dnd = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', context = 0x0, time = 0, x_root = 0, y_root = 0}, window_state = {
type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', changed_mask = 0, new_window_state = 0}, setting = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
send_event = 0 '\000', action = GDK_SETTING_ACTION_NEW, name = 0x0}, grab_broken = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', keyboard = 0,
implicit = 0, grab_window = 0x0}, touchpad_swipe = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000', n_fingers = 1 '\001', time = 0,
x = 0, y = 0, dx = 0, dy = 0, x_root = 0, y_root = 0, state = 0}, touchpad_pinch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000',
n_fingers = 1 '\001', time = 0, x = 0, y = 0, dx = 0, dy = 0, angle_delta = 0, scale = 0, x_root = 0, y_root = 0, state = 0}, pad_button = {type = GDK_FOCUS_CHANGE,
window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, button = 0, mode = 0}, pad_axis = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
time = 0, group = 0, index = 0, mode = 0, value = 0}, pad_group_mode = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, mode = 0}}

Thank you for your patience :)

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmQZ168ACgkQIgjSCVjB
3rC9hA//TYht1xxeh74dM/2ZTVQfQom5qHD3UQwd3law6Pot37GcjuxCFsi07Ogl
4RfiItn2Ie54o5+NxwlMXWXbAkgd/vCvtqKnMQmR12B3N+uUKHYIIrrkxkgBeeZB
S1bbZYH16RJImQ6JEDMOInKeC8auxqgJAwMar/bi+FH5PLdwxMYxxn8OyqmwiCMC
oF5Q5EGry2BcPzRWVGEcfc51UsbrEmWlAYxU9ss9bKcvTh8HUEqTBfSkuK8KrFML
2YC+0y3RaBGjcWyGx9RIGOY2HJdZ8epXw0WlTOySuOeQcuCBoPxp9ChVqbjt33WL
pQRgGsA6qK9IRW2PCupVLRtzNFV6bYhASs/KwTQ6PtWXJpl//GFcxe7/bDiSaIE3
08j3oqztCnbrsJMJGk/eOME83FtsGjVNgWmCpqPbGO91BFBjEfbV2sOmxjf9CDSI
BeVr8GyjZzyL+rSB+ViYcAmGlDMrDwqqcG/371nI6HxWFo2EAGi6iN4Ukp27Yejp
exQiBEj8H8ZQpagqje13NQ5rfizde4LJ9TgXLoqSiR6SIhfgZqA2hNauyu0fZDDS
aayioygAyey1EV0B/Ldh7fSN5ulRjcB7SXHulxr3RuVXmHcOOoe9Q1NtStBFV1wj
RN/rNxuewabXjpy5yoEfkstnhoE6XG1DmofLCKxFwRcjOMHOmxo=
=FlCm
-----END PGP SIGNATURE-----

P
(name . Andrew Tropin)(address . andrew@trop.in)(address . 62291@debbugs.gnu.org)
87h6udzkjb.fsf@yahoo.com
Andrew Tropin <andrew@trop.in> writes:

Toggle quote (29 lines)
> (gdb) frame 12
> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xfee500, event=event@entry=0xfdb4a0) at gtkwidget.c:7808
> 7808 in gtkwidget.c
> (gdb) p *event
> $3 = {type = GDK_FOCUS_CHANGE, any = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000'}, expose = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
> send_event = 0 '\000', area = {x = 0, y = 0, width = 0, height = 0}, region = 0x0, count = 0}, visibility = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
> send_event = 0 '\000', state = GDK_VISIBILITY_UNOBSCURED}, motion = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0, axes = 0x0,
> state = 0, is_hint = 0, device = 0x0, x_root = 0, y_root = 0}, button = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0,
> axes = 0x0, state = 0, button = 0, device = 0x0, x_root = 0, y_root = 0}, touch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0,
> y = 0, axes = 0x0, state = 0, sequence = 0x0, emulating_pointer = 0, device = 0x0, x_root = 0, y_root = 0}, scroll = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
> send_event = 0 '\000', time = 0, x = 0, y = 0, state = 0, direction = GDK_SCROLL_UP, device = 0x0, x_root = 0, y_root = 0, delta_x = 0, delta_y = 0, is_stop = 0}, key = {
> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, state = 0, keyval = 0, length = 0, string = 0x0, hardware_keycode = 0, group = 0 '\000',
> is_modifier = 0}, crossing = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', subwindow = 0x0, time = 0, x = 0, y = 0, x_root = 0, y_root = 0,
> mode = GDK_CROSSING_NORMAL, detail = GDK_NOTIFY_ANCESTOR, focus = 0, state = 0}, focus_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', in = 1},
> configure = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', x = 0, y = 0, width = 0, height = 0}, property = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
> send_event = 0 '\000', atom = 0x0, time = 0, state = 0}, selection = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', selection = 0x0, target = 0x0,
> property = 0x0, time = 0, requestor = 0x0}, owner_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', owner = 0x0,
> reason = GDK_OWNER_CHANGE_NEW_OWNER, selection = 0x0, time = 0, selection_time = 0}, proximity = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
> time = 0, device = 0x0}, dnd = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', context = 0x0, time = 0, x_root = 0, y_root = 0}, window_state = {
> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', changed_mask = 0, new_window_state = 0}, setting = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
> send_event = 0 '\000', action = GDK_SETTING_ACTION_NEW, name = 0x0}, grab_broken = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', keyboard = 0,
> implicit = 0, grab_window = 0x0}, touchpad_swipe = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000', n_fingers = 1 '\001', time = 0,
> x = 0, y = 0, dx = 0, dy = 0, x_root = 0, y_root = 0, state = 0}, touchpad_pinch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000',
> n_fingers = 1 '\001', time = 0, x = 0, y = 0, dx = 0, dy = 0, angle_delta = 0, scale = 0, x_root = 0, y_root = 0, state = 0}, pad_button = {type = GDK_FOCUS_CHANGE,
> window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, button = 0, mode = 0}, pad_axis = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
> time = 0, group = 0, index = 0, mode = 0, value = 0}, pad_group_mode = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, mode = 0}}
>
> Thank you for your patience :)

OK, thanks. This is quite odd. If you type:

(gdb) p G_OBJECT_TYPE_NAME (widget)

what do you see?
A
A
Andrew Tropin wrote on 22 Mar 2023 05:42
(name . Po Lu)(address . luangruo@yahoo.com)(address . 62291@debbugs.gnu.org)
874jqdwg62.fsf@trop.in
On 2023-03-22 08:39, Po Lu wrote:

Toggle quote (37 lines)
> Andrew Tropin <andrew@trop.in> writes:
>
>> (gdb) frame 12
>> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xfee500, event=event@entry=0xfdb4a0) at gtkwidget.c:7808
>> 7808 in gtkwidget.c
>> (gdb) p *event
>> $3 = {type = GDK_FOCUS_CHANGE, any = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000'}, expose = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>> send_event = 0 '\000', area = {x = 0, y = 0, width = 0, height = 0}, region = 0x0, count = 0}, visibility = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>> send_event = 0 '\000', state = GDK_VISIBILITY_UNOBSCURED}, motion = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0, axes = 0x0,
>> state = 0, is_hint = 0, device = 0x0, x_root = 0, y_root = 0}, button = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0,
>> axes = 0x0, state = 0, button = 0, device = 0x0, x_root = 0, y_root = 0}, touch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0,
>> y = 0, axes = 0x0, state = 0, sequence = 0x0, emulating_pointer = 0, device = 0x0, x_root = 0, y_root = 0}, scroll = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>> send_event = 0 '\000', time = 0, x = 0, y = 0, state = 0, direction = GDK_SCROLL_UP, device = 0x0, x_root = 0, y_root = 0, delta_x = 0, delta_y = 0, is_stop = 0}, key = {
>> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, state = 0, keyval = 0, length = 0, string = 0x0, hardware_keycode = 0, group = 0 '\000',
>> is_modifier = 0}, crossing = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', subwindow = 0x0, time = 0, x = 0, y = 0, x_root = 0, y_root = 0,
>> mode = GDK_CROSSING_NORMAL, detail = GDK_NOTIFY_ANCESTOR, focus = 0, state = 0}, focus_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', in = 1},
>> configure = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', x = 0, y = 0, width = 0, height = 0}, property = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>> send_event = 0 '\000', atom = 0x0, time = 0, state = 0}, selection = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', selection = 0x0, target = 0x0,
>> property = 0x0, time = 0, requestor = 0x0}, owner_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', owner = 0x0,
>> reason = GDK_OWNER_CHANGE_NEW_OWNER, selection = 0x0, time = 0, selection_time = 0}, proximity = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
>> time = 0, device = 0x0}, dnd = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', context = 0x0, time = 0, x_root = 0, y_root = 0}, window_state = {
>> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', changed_mask = 0, new_window_state = 0}, setting = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>> send_event = 0 '\000', action = GDK_SETTING_ACTION_NEW, name = 0x0}, grab_broken = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', keyboard = 0,
>> implicit = 0, grab_window = 0x0}, touchpad_swipe = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000', n_fingers = 1 '\001', time = 0,
>> x = 0, y = 0, dx = 0, dy = 0, x_root = 0, y_root = 0, state = 0}, touchpad_pinch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000',
>> n_fingers = 1 '\001', time = 0, x = 0, y = 0, dx = 0, dy = 0, angle_delta = 0, scale = 0, x_root = 0, y_root = 0, state = 0}, pad_button = {type = GDK_FOCUS_CHANGE,
>> window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, button = 0, mode = 0}, pad_axis = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
>> time = 0, group = 0, index = 0, mode = 0, value = 0}, pad_group_mode = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, mode = 0}}
>>
>> Thank you for your patience :)
>
> OK, thanks. This is quite odd. If you type:
>
> (gdb) p G_OBJECT_TYPE_NAME (widget)
>
> what do you see?

(gdb) p G_OBJECT_TYPE_NAME (widget)
No symbol "G_OBJECT_TYPE_NAME" in current context.

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmQahyUACgkQIgjSCVjB
3rD0PA//WrLzr/6yWg0DWM13Uke4RZJcIYHqjcEKgTf7DTF/yeOTgR2Ucl6II479
BGouU8qvD68SCIy1EyU6uKtpipDy1U+kO8wXaT+ivvagG2ZtsNdSCxUu/NuBWV3F
9w30Cqakw7fB8oSBB8YeHzWzHdnfexZQUDRq9uxfki+nCWs4nhZrUiB/TdLd2Rjf
5HE93pL0LPNO4qEO6RHgVns3v4BKbusc4uoP0Wd/PSBa2IXON8lYY1UHBuL222rt
M3kXqvZD1RUeQSGIlWkl1lQQs/AgQsq/icOXmLdgfSH2ovSEcDHYwx+a180IStUh
L/CyZdNYgFkIrYiZr4DLR6mnerybuQKDi7vm/hI6a7lNBoeGBcQriW8AmPLv/Z8O
xiA+so8NoMEUgDpJljlfB/gLhDalPukTXjpc0D7DnlNwuUBpnMXXWt+4rz4/ate+
cRc7NuyLFFxZdmPOVb6Tvd+xejloOmvtbpCGiid4PEZg343FShe6XB7/ooTjQZLC
yIk1uqiJfS4LJg+I74wq5F5CwBJcsuCxhj4SqptgmsQ2eWqY4XEW4I0VRLft8lr5
unc1JRlNKkGYXX2DPbHlY2p29p2TH1QZaDWuivowLGBrmYsbA9mNLVu0FO9ZA2Rh
JTpyEnb/oE5olPt1D1enzycW2oSGM7VzEB4o0ZIP5+eCqhvaGuE=
=8ggt
-----END PGP SIGNATURE-----

P
(name . Andrew Tropin)(address . andrew@trop.in)(address . 62291@debbugs.gnu.org)
87cz51z568.fsf@yahoo.com
Andrew Tropin <andrew@trop.in> writes:

Toggle quote (42 lines)
> On 2023-03-22 08:39, Po Lu wrote:
>
>> Andrew Tropin <andrew@trop.in> writes:
>>
>>> (gdb) frame 12
>>> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xfee500, event=event@entry=0xfdb4a0) at gtkwidget.c:7808
>>> 7808 in gtkwidget.c
>>> (gdb) p *event
>>> $3 = {type = GDK_FOCUS_CHANGE, any = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000'}, expose = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>> send_event = 0 '\000', area = {x = 0, y = 0, width = 0, height = 0}, region = 0x0, count = 0}, visibility = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>> send_event = 0 '\000', state = GDK_VISIBILITY_UNOBSCURED}, motion = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0, axes = 0x0,
>>> state = 0, is_hint = 0, device = 0x0, x_root = 0, y_root = 0}, button = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0,
>>> axes = 0x0, state = 0, button = 0, device = 0x0, x_root = 0, y_root = 0}, touch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0,
>>> y = 0, axes = 0x0, state = 0, sequence = 0x0, emulating_pointer = 0, device = 0x0, x_root = 0, y_root = 0}, scroll = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>> send_event = 0 '\000', time = 0, x = 0, y = 0, state = 0, direction = GDK_SCROLL_UP, device = 0x0, x_root = 0, y_root = 0, delta_x = 0, delta_y = 0, is_stop = 0}, key = {
>>> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, state = 0, keyval = 0, length = 0, string = 0x0, hardware_keycode = 0, group = 0 '\000',
>>> is_modifier = 0}, crossing = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', subwindow = 0x0, time = 0, x = 0, y = 0, x_root = 0, y_root = 0,
>>> mode = GDK_CROSSING_NORMAL, detail = GDK_NOTIFY_ANCESTOR, focus = 0, state = 0}, focus_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', in = 1},
>>> configure = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', x = 0, y = 0, width = 0, height = 0}, property = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>> send_event = 0 '\000', atom = 0x0, time = 0, state = 0}, selection = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', selection = 0x0, target = 0x0,
>>> property = 0x0, time = 0, requestor = 0x0}, owner_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', owner = 0x0,
>>> reason = GDK_OWNER_CHANGE_NEW_OWNER, selection = 0x0, time = 0, selection_time = 0}, proximity = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
>>> time = 0, device = 0x0}, dnd = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', context = 0x0, time = 0, x_root = 0, y_root = 0}, window_state = {
>>> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', changed_mask = 0, new_window_state = 0}, setting = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>> send_event = 0 '\000', action = GDK_SETTING_ACTION_NEW, name = 0x0}, grab_broken = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', keyboard = 0,
>>> implicit = 0, grab_window = 0x0}, touchpad_swipe = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000', n_fingers = 1 '\001', time = 0,
>>> x = 0, y = 0, dx = 0, dy = 0, x_root = 0, y_root = 0, state = 0}, touchpad_pinch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000',
>>> n_fingers = 1 '\001', time = 0, x = 0, y = 0, dx = 0, dy = 0, angle_delta = 0, scale = 0, x_root = 0, y_root = 0, state = 0}, pad_button = {type = GDK_FOCUS_CHANGE,
>>> window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, button = 0, mode = 0}, pad_axis = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
>>> time = 0, group = 0, index = 0, mode = 0, value = 0}, pad_group_mode = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, mode = 0}}
>>>
>>> Thank you for your patience :)
>>
>> OK, thanks. This is quite odd. If you type:
>>
>> (gdb) p G_OBJECT_TYPE_NAME (widget)
>>
>> what do you see?
>
> (gdb) p G_OBJECT_TYPE_NAME (widget)
> No symbol "G_OBJECT_TYPE_NAME" in current context.

Hmm. Would you please try this instead?

(gdb) p g_type_name (((GTypeInstance *) widget)->g_class->g_type)
A
A
Andrew Tropin wrote on 22 Mar 2023 08:28
(name . Po Lu)(address . luangruo@yahoo.com)(address . 62291@debbugs.gnu.org)
87v8itutwi.fsf@trop.in
On 2023-03-22 14:11, Po Lu wrote:

Toggle quote (48 lines)
> Andrew Tropin <andrew@trop.in> writes:
>
>> On 2023-03-22 08:39, Po Lu wrote:
>>
>>> Andrew Tropin <andrew@trop.in> writes:
>>>
>>>> (gdb) frame 12
>>>> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xfee500, event=event@entry=0xfdb4a0) at gtkwidget.c:7808
>>>> 7808 in gtkwidget.c
>>>> (gdb) p *event
>>>> $3 = {type = GDK_FOCUS_CHANGE, any = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000'}, expose = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>> send_event = 0 '\000', area = {x = 0, y = 0, width = 0, height = 0}, region = 0x0, count = 0}, visibility = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>> send_event = 0 '\000', state = GDK_VISIBILITY_UNOBSCURED}, motion = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0, axes = 0x0,
>>>> state = 0, is_hint = 0, device = 0x0, x_root = 0, y_root = 0}, button = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0,
>>>> axes = 0x0, state = 0, button = 0, device = 0x0, x_root = 0, y_root = 0}, touch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0,
>>>> y = 0, axes = 0x0, state = 0, sequence = 0x0, emulating_pointer = 0, device = 0x0, x_root = 0, y_root = 0}, scroll = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>> send_event = 0 '\000', time = 0, x = 0, y = 0, state = 0, direction = GDK_SCROLL_UP, device = 0x0, x_root = 0, y_root = 0, delta_x = 0, delta_y = 0, is_stop = 0}, key = {
>>>> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, state = 0, keyval = 0, length = 0, string = 0x0, hardware_keycode = 0, group = 0 '\000',
>>>> is_modifier = 0}, crossing = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', subwindow = 0x0, time = 0, x = 0, y = 0, x_root = 0, y_root = 0,
>>>> mode = GDK_CROSSING_NORMAL, detail = GDK_NOTIFY_ANCESTOR, focus = 0, state = 0}, focus_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', in = 1},
>>>> configure = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', x = 0, y = 0, width = 0, height = 0}, property = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>> send_event = 0 '\000', atom = 0x0, time = 0, state = 0}, selection = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', selection = 0x0, target = 0x0,
>>>> property = 0x0, time = 0, requestor = 0x0}, owner_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', owner = 0x0,
>>>> reason = GDK_OWNER_CHANGE_NEW_OWNER, selection = 0x0, time = 0, selection_time = 0}, proximity = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
>>>> time = 0, device = 0x0}, dnd = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', context = 0x0, time = 0, x_root = 0, y_root = 0}, window_state = {
>>>> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', changed_mask = 0, new_window_state = 0}, setting = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>> send_event = 0 '\000', action = GDK_SETTING_ACTION_NEW, name = 0x0}, grab_broken = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', keyboard = 0,
>>>> implicit = 0, grab_window = 0x0}, touchpad_swipe = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000', n_fingers = 1 '\001', time = 0,
>>>> x = 0, y = 0, dx = 0, dy = 0, x_root = 0, y_root = 0, state = 0}, touchpad_pinch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000',
>>>> n_fingers = 1 '\001', time = 0, x = 0, y = 0, dx = 0, dy = 0, angle_delta = 0, scale = 0, x_root = 0, y_root = 0, state = 0}, pad_button = {type = GDK_FOCUS_CHANGE,
>>>> window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, button = 0, mode = 0}, pad_axis = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
>>>> time = 0, group = 0, index = 0, mode = 0, value = 0}, pad_group_mode = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, mode = 0}}
>>>>
>>>> Thank you for your patience :)
>>>
>>> OK, thanks. This is quite odd. If you type:
>>>
>>> (gdb) p G_OBJECT_TYPE_NAME (widget)
>>>
>>> what do you see?
>>
>> (gdb) p G_OBJECT_TYPE_NAME (widget)
>> No symbol "G_OBJECT_TYPE_NAME" in current context.
>
> Hmm. Would you please try this instead?
>
> (gdb) p g_type_name (((GTypeInstance *) widget)->g_class->g_type)

(gdb) p g_type_name (((GTypeInstance *) widget)->g_class->g_type)
'g_type_name' has unknown return type; cast the call to its declared return type

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmQarh0ACgkQIgjSCVjB
3rCKFhAAhwdKdaUWXiA2h5wUWapjp9PO/gu/Hc8edVdXc+Tk6MmW0sgrfSz++OYg
LqtvZdJTTmK6Jzy6c6uIfNxEoKiWXfKZEI1I8KpVYhrKLCLgmhyuKf4pv1jUw3yB
tP4d7e0zqCf/tyK8yPcNRSJWyPhanDAMElLRHOo1X89YI0dM4HSqZiO/15bezWQU
oQUxpPXzi9isTyXM4WRbCsEVLoYpuK/wZI+H5xbVe0eIfJn5jMYdxGpdR5Dq/cSa
GI3eMRal8hkOHEgpOxD8kZoUYZDHsZbxkxbUfrE+evbpfsOq1F+jdztWeloDJDkK
A6uUW3dJKhzUmJKgHYKot8rFWL+py4n9hfYCwtpchWxmYhfVyRMa6+al4QBxmE9z
9N4AgyEYOvOO2UfgHwsbABUx9yT/bTR9QNYaFPQycvdRY+J12J9cWCRke4Pg5s6z
g0yY6QYSlv8xTvruEY3SFj0+JnyF4IDZnThMlKCw0T5vQ7R9Y7Fg65hvAEJrj77d
E39pCn6poJWV+MYYq6eXY7xplmNcbPooGYlX8/UEKiKgr9jcVjoY45tBv160sXsb
KEAyMPb+FcIm1oTbo0uW+gaP8ZeW+7tx8luXfKWxlpfVN5JAe9BPIpgz2/5J8v9q
miM02I0YDPBtG/AsuOlKGS+yS3nRzXhdPdG9jB9ezv1dTFOvt9w=
=Ht1b
-----END PGP SIGNATURE-----

P
(name . Andrew Tropin)(address . andrew@trop.in)(address . 62291@debbugs.gnu.org)
878rfpyt1j.fsf@yahoo.com
Andrew Tropin <andrew@trop.in> writes:

Toggle quote (53 lines)
> On 2023-03-22 14:11, Po Lu wrote:
>
>> Andrew Tropin <andrew@trop.in> writes:
>>
>>> On 2023-03-22 08:39, Po Lu wrote:
>>>
>>>> Andrew Tropin <andrew@trop.in> writes:
>>>>
>>>>> (gdb) frame 12
>>>>> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xfee500, event=event@entry=0xfdb4a0) at gtkwidget.c:7808
>>>>> 7808 in gtkwidget.c
>>>>> (gdb) p *event
>>>>> $3 = {type = GDK_FOCUS_CHANGE, any = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000'}, expose = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>>> send_event = 0 '\000', area = {x = 0, y = 0, width = 0, height = 0}, region = 0x0, count = 0}, visibility = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>>> send_event = 0 '\000', state = GDK_VISIBILITY_UNOBSCURED}, motion = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0, axes = 0x0,
>>>>> state = 0, is_hint = 0, device = 0x0, x_root = 0, y_root = 0}, button = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0,
>>>>> axes = 0x0, state = 0, button = 0, device = 0x0, x_root = 0, y_root = 0}, touch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0,
>>>>> y = 0, axes = 0x0, state = 0, sequence = 0x0, emulating_pointer = 0, device = 0x0, x_root = 0, y_root = 0}, scroll = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>>> send_event = 0 '\000', time = 0, x = 0, y = 0, state = 0, direction = GDK_SCROLL_UP, device = 0x0, x_root = 0, y_root = 0, delta_x = 0, delta_y = 0, is_stop = 0}, key = {
>>>>> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, state = 0, keyval = 0, length = 0, string = 0x0, hardware_keycode = 0, group = 0 '\000',
>>>>> is_modifier = 0}, crossing = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', subwindow = 0x0, time = 0, x = 0, y = 0, x_root = 0, y_root = 0,
>>>>> mode = GDK_CROSSING_NORMAL, detail = GDK_NOTIFY_ANCESTOR, focus = 0, state = 0}, focus_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', in = 1},
>>>>> configure = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', x = 0, y = 0, width = 0, height = 0}, property = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>>> send_event = 0 '\000', atom = 0x0, time = 0, state = 0}, selection = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', selection = 0x0, target = 0x0,
>>>>> property = 0x0, time = 0, requestor = 0x0}, owner_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', owner = 0x0,
>>>>> reason = GDK_OWNER_CHANGE_NEW_OWNER, selection = 0x0, time = 0, selection_time = 0}, proximity = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
>>>>> time = 0, device = 0x0}, dnd = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', context = 0x0, time = 0, x_root = 0, y_root = 0}, window_state = {
>>>>> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', changed_mask = 0, new_window_state = 0}, setting = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>>> send_event = 0 '\000', action = GDK_SETTING_ACTION_NEW, name = 0x0}, grab_broken = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', keyboard = 0,
>>>>> implicit = 0, grab_window = 0x0}, touchpad_swipe = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000', n_fingers = 1 '\001', time = 0,
>>>>> x = 0, y = 0, dx = 0, dy = 0, x_root = 0, y_root = 0, state = 0}, touchpad_pinch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000',
>>>>> n_fingers = 1 '\001', time = 0, x = 0, y = 0, dx = 0, dy = 0, angle_delta = 0, scale = 0, x_root = 0, y_root = 0, state = 0}, pad_button = {type = GDK_FOCUS_CHANGE,
>>>>> window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, button = 0, mode = 0}, pad_axis = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
>>>>> time = 0, group = 0, index = 0, mode = 0, value = 0}, pad_group_mode = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, mode = 0}}
>>>>>
>>>>> Thank you for your patience :)
>>>>
>>>> OK, thanks. This is quite odd. If you type:
>>>>
>>>> (gdb) p G_OBJECT_TYPE_NAME (widget)
>>>>
>>>> what do you see?
>>>
>>> (gdb) p G_OBJECT_TYPE_NAME (widget)
>>> No symbol "G_OBJECT_TYPE_NAME" in current context.
>>
>> Hmm. Would you please try this instead?
>>
>> (gdb) p g_type_name (((GTypeInstance *) widget)->g_class->g_type)
>
> (gdb) p g_type_name (((GTypeInstance *) widget)->g_class->g_type)
> 'g_type_name' has unknown return type; cast the call to its declared return type

Ah, I guess you have to cast it to (char *):

(gdb) p (char *) g_type_name ...
A
A
Andrew Tropin wrote on 22 Mar 2023 12:02
(name . Po Lu)(address . luangruo@yahoo.com)(address . 62291@debbugs.gnu.org)
878rfpujzu.fsf@trop.in
On 2023-03-22 18:33, Po Lu wrote:

Toggle quote (59 lines)
> Andrew Tropin <andrew@trop.in> writes:
>
>> On 2023-03-22 14:11, Po Lu wrote:
>>
>>> Andrew Tropin <andrew@trop.in> writes:
>>>
>>>> On 2023-03-22 08:39, Po Lu wrote:
>>>>
>>>>> Andrew Tropin <andrew@trop.in> writes:
>>>>>
>>>>>> (gdb) frame 12
>>>>>> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xfee500, event=event@entry=0xfdb4a0) at gtkwidget.c:7808
>>>>>> 7808 in gtkwidget.c
>>>>>> (gdb) p *event
>>>>>> $3 = {type = GDK_FOCUS_CHANGE, any = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000'}, expose = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>>>> send_event = 0 '\000', area = {x = 0, y = 0, width = 0, height = 0}, region = 0x0, count = 0}, visibility = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>>>> send_event = 0 '\000', state = GDK_VISIBILITY_UNOBSCURED}, motion = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0, axes = 0x0,
>>>>>> state = 0, is_hint = 0, device = 0x0, x_root = 0, y_root = 0}, button = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0, y = 0,
>>>>>> axes = 0x0, state = 0, button = 0, device = 0x0, x_root = 0, y_root = 0}, touch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, x = 0,
>>>>>> y = 0, axes = 0x0, state = 0, sequence = 0x0, emulating_pointer = 0, device = 0x0, x_root = 0, y_root = 0}, scroll = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>>>> send_event = 0 '\000', time = 0, x = 0, y = 0, state = 0, direction = GDK_SCROLL_UP, device = 0x0, x_root = 0, y_root = 0, delta_x = 0, delta_y = 0, is_stop = 0}, key = {
>>>>>> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, state = 0, keyval = 0, length = 0, string = 0x0, hardware_keycode = 0, group = 0 '\000',
>>>>>> is_modifier = 0}, crossing = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', subwindow = 0x0, time = 0, x = 0, y = 0, x_root = 0, y_root = 0,
>>>>>> mode = GDK_CROSSING_NORMAL, detail = GDK_NOTIFY_ANCESTOR, focus = 0, state = 0}, focus_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', in = 1},
>>>>>> configure = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', x = 0, y = 0, width = 0, height = 0}, property = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>>>> send_event = 0 '\000', atom = 0x0, time = 0, state = 0}, selection = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', selection = 0x0, target = 0x0,
>>>>>> property = 0x0, time = 0, requestor = 0x0}, owner_change = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', owner = 0x0,
>>>>>> reason = GDK_OWNER_CHANGE_NEW_OWNER, selection = 0x0, time = 0, selection_time = 0}, proximity = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
>>>>>> time = 0, device = 0x0}, dnd = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', context = 0x0, time = 0, x_root = 0, y_root = 0}, window_state = {
>>>>>> type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', changed_mask = 0, new_window_state = 0}, setting = {type = GDK_FOCUS_CHANGE, window = 0xefc450,
>>>>>> send_event = 0 '\000', action = GDK_SETTING_ACTION_NEW, name = 0x0}, grab_broken = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', keyboard = 0,
>>>>>> implicit = 0, grab_window = 0x0}, touchpad_swipe = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000', n_fingers = 1 '\001', time = 0,
>>>>>> x = 0, y = 0, dx = 0, dy = 0, x_root = 0, y_root = 0, state = 0}, touchpad_pinch = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', phase = 0 '\000',
>>>>>> n_fingers = 1 '\001', time = 0, x = 0, y = 0, dx = 0, dy = 0, angle_delta = 0, scale = 0, x_root = 0, y_root = 0, state = 0}, pad_button = {type = GDK_FOCUS_CHANGE,
>>>>>> window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, button = 0, mode = 0}, pad_axis = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000',
>>>>>> time = 0, group = 0, index = 0, mode = 0, value = 0}, pad_group_mode = {type = GDK_FOCUS_CHANGE, window = 0xefc450, send_event = 0 '\000', time = 0, group = 0, mode = 0}}
>>>>>>
>>>>>> Thank you for your patience :)
>>>>>
>>>>> OK, thanks. This is quite odd. If you type:
>>>>>
>>>>> (gdb) p G_OBJECT_TYPE_NAME (widget)
>>>>>
>>>>> what do you see?
>>>>
>>>> (gdb) p G_OBJECT_TYPE_NAME (widget)
>>>> No symbol "G_OBJECT_TYPE_NAME" in current context.
>>>
>>> Hmm. Would you please try this instead?
>>>
>>> (gdb) p g_type_name (((GTypeInstance *) widget)->g_class->g_type)
>>
>> (gdb) p g_type_name (((GTypeInstance *) widget)->g_class->g_type)
>> 'g_type_name' has unknown return type; cast the call to its declared return type
>
> Ah, I guess you have to cast it to (char *):
>
> (gdb) p (char *) g_type_name ...

(gdb) p (char *) g_type_name (((GTypeInstance *) widget)->g_class->g_type)
$1 = 0x7ffff7a6dda2 "GtkWindow"

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmQa4EUACgkQIgjSCVjB
3rDdAA/8Cd3w0BKMnAXFaftUqNpRrTSChn85owQgFME+P+CbLc8L+6d/WoHAkP6P
RckfMhzMFmBuh0zf5ToXotj+FeDypAqP487V3R4UU1qq5owTdcXrlGRk3fkbqYFC
BDxTBujIm76TGiOcyFITiJ79pcED1LgTo6shoiL0GRTxdYO/iTGs60eTN4iZyviD
UQYpZFvklDqsDNMqxGLHumvgbnfO+MQj92M2I0a3fCYhBtaIQtR720OtAX+UwW3F
tb6pExDaIltiQ9QPavg0rk/q0f5Wu6fKCORkZejZj6IwEkmAK2baaTy4PmxRJA+p
h7G5nI+x8dH2QdCzlUr4vhBFPNn7qGjk/idqEf2MJUpqb9xkMgHAlLLAta8LvNrU
dBposXdSbR+QdGARXYxpRftz7oh8LhHiKtWdb6MZHks5eReenO49Ffx0EiZjFKIL
S+G7UR7p4e5G7jg/HzXNzjonSXNx2wXqLi5Q87nCYz/hJuGyahqN+BZ8PcfKt0LX
pbyqflVTC9zAYUGvCjALSNhvnLNwZwTT9emu6nhlxa6pR6Ye8mBKMItuzduvLTDn
0Ec/tXitxz0O+t+g2gndS5BsVQVHuhtWT8uy17lK2G8Ic6dB8yiRkXqNQZ6lN6Z3
KTSCqTTIF91JPqVK8v7LnORbUZh+Joc9zXlO28avUOK79oIuAXo=
=sDHa
-----END PGP SIGNATURE-----

P
(name . Andrew Tropin)(address . andrew@trop.in)(address . 62291@debbugs.gnu.org)
87zg84xpn6.fsf@yahoo.com
Andrew Tropin <andrew@trop.in> writes:

Toggle quote (3 lines)
> (gdb) p (char *) g_type_name (((GTypeInstance *) widget)->g_class->g_type)
> $1 = 0x7ffff7a6dda2 "GtkWindow"

OK, thanks. Would you please type the following:

(gdb) p widget
(gdb) p Vframe_list
(gdb) xcar
(gdb) xframe
$N = ...
(gdb) p *$N->output.pgtk

thanks.
A
A
Andrew Tropin wrote on 23 Mar 2023 06:18
(name . Po Lu)(address . luangruo@yahoo.com)(address . 62291@debbugs.gnu.org)
87zg84t58q.fsf@trop.in
On 2023-03-23 08:44, Po Lu wrote:

Toggle quote (16 lines)
> Andrew Tropin <andrew@trop.in> writes:
>
>> (gdb) p (char *) g_type_name (((GTypeInstance *) widget)->g_class->g_type)
>> $1 = 0x7ffff7a6dda2 "GtkWindow"
>
> OK, thanks. Would you please type the following:
>
> (gdb) p widget
> (gdb) p Vframe_list
> (gdb) xcar
> (gdb) xframe
> $N = ...
> (gdb) p *$N->output.pgtk
>
> thanks.

(gdb) frame 12
#12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xf04510, even7808 in gtkwidget.c
(gdb) p widget
$2 = (GtkWidget *) 0xf04510
(gdb) p Vframe_list
'Vframe_list' has unknown type; cast it to its declared type
(gdb) xcar
Undefined command: "xcar". Try "help".
(gdb) xframe
Undefined command: "xframe". Try "help".

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmQb4TUACgkQIgjSCVjB
3rCxoQ/+JqOk46ealLWKTjKGblHtWKmckGpvCpOag94qaWzlJOcDH0Fh2L9P0Cza
++Ga/qd3JLRLfCVXA6yE8bd1Sa8tmWcnjcORYKTVDwhUtWynX+qtSnIFX7KS7ap9
bzDfMg397EzkNv7Qr7FPwX2j/WkWbjz1VZhDIpdQ6EUNyzawu7gMI0NjyGzLlzRe
mK8BwHIK6pR375YvYLTKFJcVt0Jck8Z//8bz6Suqu9Ua+xm6/BRUs738rgFboAvc
kIOCX6lcAY1dgbhuqgN4/PSGy8MNU6UfgvjN2ZmCLuJt1E6a/Y25/SUMgfa3P2G/
NnGq54ehtCaZDadzjwUKZeJ+G1YNriIhmizDwHNf7fl1sJHozlNB/ChHDY9Y156c
0wvJtA5BDz25WLUc6yDFob7ZYGw3szXY+XsTZrazcgiLJbfpa8WeyQxw80/18a72
4SK7L9AMHUTFf9/9sYBX8L8AoW312NT++/ooitlw6vtpdO46D09jXTqDywSZA8g+
TejyQ6kFn+cLKaiCO6fwMq+Bv6PMphaS8f14JfIXWDCY6oe7vS40aHZ+Bcku5D4V
6cLeg4EUGvuzDVROcrgJUUhqVPF6LOg3pCLHqWre7k5QkC0BeOgP2yU0m02OJGbZ
r5aXrcgQd9FcDr/8ykkjGwzGxkow9qWyO27F0GWNDmtPM9j7XBE=
=rxIC
-----END PGP SIGNATURE-----

E
E
Eli Zaretskii wrote on 23 Mar 2023 08:16
(name . Andrew Tropin)(address . andrew@trop.in)
83fs9w544t.fsf@gnu.org
Toggle quote (15 lines)
> Cc: 62291@debbugs.gnu.org
> From: Andrew Tropin <andrew@trop.in>
> Date: Thu, 23 Mar 2023 09:18:45 +0400
>
> (gdb) frame 12
> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xf04510, even7808 in gtkwidget.c
> (gdb) p widget
> $2 = (GtkWidget *) 0xf04510
> (gdb) p Vframe_list
> 'Vframe_list' has unknown type; cast it to its declared type
> (gdb) xcar
> Undefined command: "xcar". Try "help".
> (gdb) xframe
> Undefined command: "xframe". Try "help".

To solve the last two problems, do this:

(gdb) source /path/to/emacs/src/.gdbinit

These are commands we define in .gdbinit which comes with Emacs.
A
A
Andrew Tropin wrote on 23 Mar 2023 19:22
(name . Eli Zaretskii)(address . eliz@gnu.org)
87ttybtjil.fsf@trop.in
On 2023-03-23 09:16, Eli Zaretskii wrote:

Toggle quote (21 lines)
>> Cc: 62291@debbugs.gnu.org
>> From: Andrew Tropin <andrew@trop.in>
>> Date: Thu, 23 Mar 2023 09:18:45 +0400
>>
>> (gdb) frame 12
>> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xf04510, even7808 in gtkwidget.c
>> (gdb) p widget
>> $2 = (GtkWidget *) 0xf04510
>> (gdb) p Vframe_list
>> 'Vframe_list' has unknown type; cast it to its declared type
>> (gdb) xcar
>> Undefined command: "xcar". Try "help".
>> (gdb) xframe
>> Undefined command: "xframe". Try "help".
>
> To solve the last two problems, do this:
>
> (gdb) source /path/to/emacs/src/.gdbinit
>
> These are commands we define in .gdbinit which comes with Emacs.

Thank you very much. I updated my debugging setup and will write down a
note for future readers of this thread:

Downloaded latest emacs source code.

guix shell -D emacs-next-pgtk --with-debug-info=glib \
--with-debug-info=gtk+ --no-grafts -- \
./configure --enable-checking='yes,glyphs' \
--enable-check-lisp-object-type --with-pgtk \
CFLAGS='-O0 -g3'

guix shell -D emacs-next-pgtk --with-debug-info=glib \
--with-debug-info=gtk+ --no-grafts -- make

cd src
gdb emacs

Toggle snippet (112 lines)
GNU gdb (GDB) 12.1
Copyright (C) 2022 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from emacs...
SIGINT is used by the debugger.
Are you sure you want to change it? (y or n) [answered Y; input not from terminal]
DISPLAY = :0
WAYLAND_DISPLAY = wayland-1
TERM = xterm-256color
Breakpoint 1 at 0x57d3f4: file emacs.c, line 427.
(gdb) r -Q
Starting program: /home/bob/work/gnu/emacs/src/emacs -Q
warning: Unable to find libthread_db matching inferior's thread library, thread debu
[New LWP 9978]
[New LWP 9979]
[New LWP 9980]
Gdk-Message: 22:14:56.365: Unable to load sb_v_double_arrow from the cursor theme
Gdk-Message: 22:14:56.365: Unable to load sb_h_double_arrow from the cursor theme
Gdk-Message: 22:14:56.403: Unable to load hand2 from the cursor theme
Gdk-Message: 22:14:56.403: Unable to load sb_h_double_arrow from the cursor theme
Gdk-Message: 22:14:56.403: Unable to load sb_v_double_arrow from the cursor theme
[New LWP 9981]
[LWP 9981 exited]
[New LWP 9982]
[New LWP 9983]
[LWP 9982 exited]
[LWP 9983 exited]
[New LWP 9984]
[New LWP 9985]
[LWP 9984 exited]
[LWP 9985 exited]
[LWP 9979 exited]

Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20w
msck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
(gdb) bt
#0 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#1 0x00007ffff71bb21b in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#2 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#3 0x00007ffff71a7884 in g_object_dispatch_properties_changed () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#4 0x00007ffff71a9834 in g_object_notify_by_pspec () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#5 0x00007ffff79afbcd in gtk_window_focus_in_event (event=<optimized out>, widget=0x1014500) at gtkwindow.c:8503
#6 gtk_window_focus_in_event (widget=widget@entry=0x1014500, event=<optimized out>) at gtkwindow.c:8491
#7 0x00007ffff79de357 in _gtk_marshal_BOOLEAN__BOXED (closure=0x10aedd0, return_value=0x7fffffffb570, n_param_values=<optimized out>, param_values=0x7fffffffb620,
invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:83
#8 0x00007ffff71a34af in g_closure_invoke () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#9 0x00007ffff71b49e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#10 0x00007ffff71bad65 in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#11 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x1014500, event=event@entry=0x7fffe4007b50) at gtkwidget.c:7808
#13 0x00007ffff798d472 in gtk_widget_event_internal (event=0x7fffe4007b50, widget=0x1014500) at gtkwidget.c:7379
#14 0x00007ffff784b37a in gtk_main_do_event (event=0x7fffe4007b50) at gtkmain.c:1861
#15 gtk_main_do_event (event=<optimized out>) at gtkmain.c:1691
#16 0x00007ffff7efc3c5 in _gdk_event_emit (event=event@entry=0x7fffe4007b50) at gdkevents.c:73
#17 0x00007ffff7f59352 in gdk_event_source_dispatch (base=<optimized out>, callback=<optimized out>, data=<optimized out>) at gdkeventsource.c:124
#18 0x00007ffff70af4cb in g_main_context_dispatch () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libglib-2.0.so.0
#19 0x00000000007771e4 in pgtk_read_socket (terminal=0x1079530, hold_quit=0x7fffffffba10) at pgtkterm.c:3840
#20 0x000000000059703c in gobble_input () at keyboard.c:7424
#21 0x0000000000597580 in handle_async_input () at keyboard.c:7655
#22 0x000000000059759f in process_pending_signals () at keyboard.c:7669
#23 0x00000000005975df in unblock_input_to (level=0) at keyboard.c:7684
#24 0x0000000000597603 in unblock_input () at keyboard.c:7703
#25 0x000000000058fe19 in timer_check () at keyboard.c:4749
#26 0x000000000058ce8a in readable_events (flags=1) at keyboard.c:3531
#27 0x0000000000596f04 in get_input_pending (flags=1) at keyboard.c:7374
#28 0x00000000005a0201 in detect_input_pending_run_timers (do_display=true) at keyboard.c:10904
#29 0x00000000006de504 in wait_reading_process_output (time_limit=30, nsecs=0, read_kbd=-1, do_display=true, wait_for_cell=XIL(0), wait_proc=0x0, just_wait_proc=0)
at process.c:5779
#30 0x0000000000431ef3 in sit_for (timeout=make_fixnum(30), reading=true, display_option=1) at dispnew.c:6256
#31 0x000000000058a731 in read_char (commandflag=1, map=XIL(0x7ffff41b4703), prev_event=XIL(0), used_mouse_menu=0x7fffffffc42f, end_time=0x0) at keyboard.c:2879
#32 0x000000000059e2ee in read_key_sequence (keybuf=0x7fffffffc5c0, prompt=XIL(0), dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true,
--Type <RET> for more, q to quit, c to continue without paging--c
prevent_redisplay=false) at keyboard.c:10081
#33 0x0000000000585bc7 in command_loop_1 () at keyboard.c:1382
#34 0x0000000000667131 in internal_condition_case (bfun=0x5857bc <command_loop_1>, handlers=XIL(0x90), hfun=0x584c7f <cmd_error>) at eval.c:1474
#35 0x00000000005853cc in command_loop_2 (handlers=XIL(0x90)) at keyboard.c:1131
#36 0x00000000006663ad in internal_catch (tag=XIL(0xff60), func=0x5853a9 <command_loop_2>, arg=XIL(0x90)) at eval.c:1197
#37 0x0000000000585365 in command_loop () at keyboard.c:1109
#38 0x000000000058476d in recursive_edit_1 () at keyboard.c:718
#39 0x0000000000584974 in Frecursive_edit () at keyboard.c:801
#40 0x000000000058034c in main (argc=2, argv=0x7fffffffcb08) at emacs.c:2530
(gdb) frame 12
#12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x1014500, event=event@entry=0x7fffe4007b50) at gtkwidget.c:7808
7808 gtkwidget.c: No such file or directory.
(gdb) frame 12
#12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x1014500, event=event@entry=0x7fffe4007b50) at gtkwidget.c:7808
7808 in gtkwidget.c
(gdb) p widget
$1 = (GtkWidget *) 0x1014500
(gdb) p Vframe_list
$2 = XIL(0x7ffff41d3213)
(gdb) xcar
$3 = XIL(0x107975d)
(gdb) xframe
$4 = (struct frame *) 0x1079758
"*scratch* - GNU Emacs at ixy"


--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmQcmPIACgkQIgjSCVjB
3rDx1A/9G4pyiKpphhm71WyDuEpoGNlf8fIFEGec99TPAqZ0BOg0ZOsRq2OVSlo5
5izq619yVIfvZf6Thv3AEqpNx+Cp/QTl53qogYpb2Qo1Yvnx5Aw9l/h8w3JnuJHy
ykMD4GUZskKXzFWdImgrVWuI3pU9ONXAaJRHX01mNyDvIEWs0DlpS+tk2kMAPgSv
pPH5YPLPNVA1xDxYIdkWiWtLvUjjE1Y6hCsBV9taS5H4BXcHnUVyZhybyyGsSKt+
qlvLVIdRyHC3vU44ywKM18w3ibzWLzEwzmTF3A7GBsiTQu/fFskJvdPDldZxusL9
d/QG8ETyRhmOfpDdZvKc9g7CubY+dFe9tY1ovlJwbFgoLxOHlXzY1zSa1ckJMuhV
p7cWGHmoQOxOl/6EikL3UaVA3K2pwpNxs2EKUgUpOuQV9uplKCw16YQZcR0Jjchb
YOfnL4hVe/3pZes0k2y2h4t5y3MyAL+VSHMLkGBaqZpwsdYzYQLdz+UYg7hWC4xD
zf4/0XJS5jT5N9Xw3G88hoKvHurwW1mFcKFEsRO3uAXyxNzB0mWJFQ82ivNGfxst
GyK8CpDNXvKbilPfR2pFTUC95KP5c2XCw5WiwMMEUg8WwEd1sRGuU0cTN12qNbbQ
1mL6YUFoWeKmHTlthjctBWXJ75DsqPiBr3aAbtbTZTQUpw7DyiI=
=R7vd
-----END PGP SIGNATURE-----

P
(name . Andrew Tropin)(address . andrew@trop.in)
87jzz7x8su.fsf@yahoo.com
Andrew Tropin <andrew@trop.in> writes:

Toggle quote (150 lines)
> On 2023-03-23 09:16, Eli Zaretskii wrote:
>
>>> Cc: 62291@debbugs.gnu.org
>>> From: Andrew Tropin <andrew@trop.in>
>>> Date: Thu, 23 Mar 2023 09:18:45 +0400
>>>
>>> (gdb) frame 12
>>> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xf04510, even7808 in gtkwidget.c
>>> (gdb) p widget
>>> $2 = (GtkWidget *) 0xf04510
>>> (gdb) p Vframe_list
>>> 'Vframe_list' has unknown type; cast it to its declared type
>>> (gdb) xcar
>>> Undefined command: "xcar". Try "help".
>>> (gdb) xframe
>>> Undefined command: "xframe". Try "help".
>>
>> To solve the last two problems, do this:
>>
>> (gdb) source /path/to/emacs/src/.gdbinit
>>
>> These are commands we define in .gdbinit which comes with Emacs.
>
> Thank you very much. I updated my debugging setup and will write down a
> note for future readers of this thread:
>
> Downloaded latest emacs source code.
>
> guix shell -D emacs-next-pgtk --with-debug-info=glib \
> --with-debug-info=gtk+ --no-grafts -- \
> ./configure --enable-checking='yes,glyphs' \
> --enable-check-lisp-object-type --with-pgtk \
> CFLAGS='-O0 -g3'
>
> guix shell -D emacs-next-pgtk --with-debug-info=glib \
> --with-debug-info=gtk+ --no-grafts -- make
>
> cd src
> gdb emacs
>
> GNU gdb (GDB) 12.1
> Copyright (C) 2022 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-unknown-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <https://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
> <http://www.gnu.org/software/gdb/documentation/>.
>
> For help, type "help".
> Type "apropos word" to search for commands related to "word"...
> Reading symbols from emacs...
> SIGINT is used by the debugger.
> Are you sure you want to change it? (y or n) [answered Y; input not from terminal]
> DISPLAY = :0
> WAYLAND_DISPLAY = wayland-1
> TERM = xterm-256color
> Breakpoint 1 at 0x57d3f4: file emacs.c, line 427.
> (gdb) r -Q
> Starting program: /home/bob/work/gnu/emacs/src/emacs -Q
> warning: Unable to find libthread_db matching inferior's thread library, thread debu
> [New LWP 9978]
> [New LWP 9979]
> [New LWP 9980]
> Gdk-Message: 22:14:56.365: Unable to load sb_v_double_arrow from the cursor theme
> Gdk-Message: 22:14:56.365: Unable to load sb_h_double_arrow from the cursor theme
> Gdk-Message: 22:14:56.403: Unable to load hand2 from the cursor theme
> Gdk-Message: 22:14:56.403: Unable to load sb_h_double_arrow from the cursor theme
> Gdk-Message: 22:14:56.403: Unable to load sb_v_double_arrow from the cursor theme
> [New LWP 9981]
> [LWP 9981 exited]
> [New LWP 9982]
> [New LWP 9983]
> [LWP 9982 exited]
> [LWP 9983 exited]
> [New LWP 9984]
> [New LWP 9985]
> [LWP 9984 exited]
> [LWP 9985 exited]
> [LWP 9979 exited]
>
> Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
> 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20w
> msck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> (gdb) bt
> #0 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #1 0x00007ffff71bb21b in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #2 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #3 0x00007ffff71a7884 in g_object_dispatch_properties_changed () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #4 0x00007ffff71a9834 in g_object_notify_by_pspec () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #5 0x00007ffff79afbcd in gtk_window_focus_in_event (event=<optimized out>, widget=0x1014500) at gtkwindow.c:8503
> #6 gtk_window_focus_in_event (widget=widget@entry=0x1014500, event=<optimized out>) at gtkwindow.c:8491
> #7 0x00007ffff79de357 in _gtk_marshal_BOOLEAN__BOXED (closure=0x10aedd0, return_value=0x7fffffffb570, n_param_values=<optimized out>, param_values=0x7fffffffb620,
> invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:83
> #8 0x00007ffff71a34af in g_closure_invoke () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #9 0x00007ffff71b49e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #10 0x00007ffff71bad65 in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #11 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x1014500, event=event@entry=0x7fffe4007b50) at gtkwidget.c:7808
> #13 0x00007ffff798d472 in gtk_widget_event_internal (event=0x7fffe4007b50, widget=0x1014500) at gtkwidget.c:7379
> #14 0x00007ffff784b37a in gtk_main_do_event (event=0x7fffe4007b50) at gtkmain.c:1861
> #15 gtk_main_do_event (event=<optimized out>) at gtkmain.c:1691
> #16 0x00007ffff7efc3c5 in _gdk_event_emit (event=event@entry=0x7fffe4007b50) at gdkevents.c:73
> #17 0x00007ffff7f59352 in gdk_event_source_dispatch (base=<optimized out>, callback=<optimized out>, data=<optimized out>) at gdkeventsource.c:124
> #18 0x00007ffff70af4cb in g_main_context_dispatch () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libglib-2.0.so.0
> #19 0x00000000007771e4 in pgtk_read_socket (terminal=0x1079530, hold_quit=0x7fffffffba10) at pgtkterm.c:3840
> #20 0x000000000059703c in gobble_input () at keyboard.c:7424
> #21 0x0000000000597580 in handle_async_input () at keyboard.c:7655
> #22 0x000000000059759f in process_pending_signals () at keyboard.c:7669
> #23 0x00000000005975df in unblock_input_to (level=0) at keyboard.c:7684
> #24 0x0000000000597603 in unblock_input () at keyboard.c:7703
> #25 0x000000000058fe19 in timer_check () at keyboard.c:4749
> #26 0x000000000058ce8a in readable_events (flags=1) at keyboard.c:3531
> #27 0x0000000000596f04 in get_input_pending (flags=1) at keyboard.c:7374
> #28 0x00000000005a0201 in detect_input_pending_run_timers (do_display=true) at keyboard.c:10904
> #29 0x00000000006de504 in wait_reading_process_output (time_limit=30, nsecs=0, read_kbd=-1, do_display=true, wait_for_cell=XIL(0), wait_proc=0x0, just_wait_proc=0)
> at process.c:5779
> #30 0x0000000000431ef3 in sit_for (timeout=make_fixnum(30), reading=true, display_option=1) at dispnew.c:6256
> #31 0x000000000058a731 in read_char (commandflag=1, map=XIL(0x7ffff41b4703), prev_event=XIL(0), used_mouse_menu=0x7fffffffc42f, end_time=0x0) at keyboard.c:2879
> #32 0x000000000059e2ee in read_key_sequence (keybuf=0x7fffffffc5c0, prompt=XIL(0), dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true,
> --Type <RET> for more, q to quit, c to continue without paging--c
> prevent_redisplay=false) at keyboard.c:10081
> #33 0x0000000000585bc7 in command_loop_1 () at keyboard.c:1382
> #34 0x0000000000667131 in internal_condition_case (bfun=0x5857bc <command_loop_1>, handlers=XIL(0x90), hfun=0x584c7f <cmd_error>) at eval.c:1474
> #35 0x00000000005853cc in command_loop_2 (handlers=XIL(0x90)) at keyboard.c:1131
> #36 0x00000000006663ad in internal_catch (tag=XIL(0xff60), func=0x5853a9 <command_loop_2>, arg=XIL(0x90)) at eval.c:1197
> #37 0x0000000000585365 in command_loop () at keyboard.c:1109
> #38 0x000000000058476d in recursive_edit_1 () at keyboard.c:718
> #39 0x0000000000584974 in Frecursive_edit () at keyboard.c:801
> #40 0x000000000058034c in main (argc=2, argv=0x7fffffffcb08) at emacs.c:2530
> (gdb) frame 12
> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x1014500, event=event@entry=0x7fffe4007b50) at gtkwidget.c:7808
> 7808 gtkwidget.c: No such file or directory.
> (gdb) frame 12
> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x1014500, event=event@entry=0x7fffe4007b50) at gtkwidget.c:7808
> 7808 in gtkwidget.c
> (gdb) p widget
> $1 = (GtkWidget *) 0x1014500
> (gdb) p Vframe_list
> $2 = XIL(0x7ffff41d3213)
> (gdb) xcar
> $3 = XIL(0x107975d)
> (gdb) xframe
> $4 = (struct frame *) 0x1079758
> "*scratch* - GNU Emacs at ixy"

You forgot:

(gdb) p *$4->output_data.pgtk

Thanks.
A
A
Andrew Tropin wrote on 24 Mar 2023 05:31
(name . Po Lu)(address . luangruo@yahoo.com)
87r0teu5wj.fsf@trop.in
On 2023-03-24 09:00, Po Lu wrote:

Toggle quote (158 lines)
> Andrew Tropin <andrew@trop.in> writes:
>
>> On 2023-03-23 09:16, Eli Zaretskii wrote:
>>
>>>> Cc: 62291@debbugs.gnu.org
>>>> From: Andrew Tropin <andrew@trop.in>
>>>> Date: Thu, 23 Mar 2023 09:18:45 +0400
>>>>
>>>> (gdb) frame 12
>>>> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0xf04510, even7808 in gtkwidget.c
>>>> (gdb) p widget
>>>> $2 = (GtkWidget *) 0xf04510
>>>> (gdb) p Vframe_list
>>>> 'Vframe_list' has unknown type; cast it to its declared type
>>>> (gdb) xcar
>>>> Undefined command: "xcar". Try "help".
>>>> (gdb) xframe
>>>> Undefined command: "xframe". Try "help".
>>>
>>> To solve the last two problems, do this:
>>>
>>> (gdb) source /path/to/emacs/src/.gdbinit
>>>
>>> These are commands we define in .gdbinit which comes with Emacs.
>>
>> Thank you very much. I updated my debugging setup and will write down a
>> note for future readers of this thread:
>>
>> Downloaded latest emacs source code.
>>
>> guix shell -D emacs-next-pgtk --with-debug-info=glib \
>> --with-debug-info=gtk+ --no-grafts -- \
>> ./configure --enable-checking='yes,glyphs' \
>> --enable-check-lisp-object-type --with-pgtk \
>> CFLAGS='-O0 -g3'
>>
>> guix shell -D emacs-next-pgtk --with-debug-info=glib \
>> --with-debug-info=gtk+ --no-grafts -- make
>>
>> cd src
>> gdb emacs
>>
>> GNU gdb (GDB) 12.1
>> Copyright (C) 2022 Free Software Foundation, Inc.
>> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
>> This is free software: you are free to change and redistribute it.
>> There is NO WARRANTY, to the extent permitted by law.
>> Type "show copying" and "show warranty" for details.
>> This GDB was configured as "x86_64-unknown-linux-gnu".
>> Type "show configuration" for configuration details.
>> For bug reporting instructions, please see:
>> <https://www.gnu.org/software/gdb/bugs/>.
>> Find the GDB manual and other documentation resources online at:
>> <http://www.gnu.org/software/gdb/documentation/>.
>>
>> For help, type "help".
>> Type "apropos word" to search for commands related to "word"...
>> Reading symbols from emacs...
>> SIGINT is used by the debugger.
>> Are you sure you want to change it? (y or n) [answered Y; input not from terminal]
>> DISPLAY = :0
>> WAYLAND_DISPLAY = wayland-1
>> TERM = xterm-256color
>> Breakpoint 1 at 0x57d3f4: file emacs.c, line 427.
>> (gdb) r -Q
>> Starting program: /home/bob/work/gnu/emacs/src/emacs -Q
>> warning: Unable to find libthread_db matching inferior's thread library, thread debu
>> [New LWP 9978]
>> [New LWP 9979]
>> [New LWP 9980]
>> Gdk-Message: 22:14:56.365: Unable to load sb_v_double_arrow from the cursor theme
>> Gdk-Message: 22:14:56.365: Unable to load sb_h_double_arrow from the cursor theme
>> Gdk-Message: 22:14:56.403: Unable to load hand2 from the cursor theme
>> Gdk-Message: 22:14:56.403: Unable to load sb_h_double_arrow from the cursor theme
>> Gdk-Message: 22:14:56.403: Unable to load sb_v_double_arrow from the cursor theme
>> [New LWP 9981]
>> [LWP 9981 exited]
>> [New LWP 9982]
>> [New LWP 9983]
>> [LWP 9982 exited]
>> [LWP 9983 exited]
>> [New LWP 9984]
>> [New LWP 9985]
>> [LWP 9984 exited]
>> [LWP 9985 exited]
>> [LWP 9979 exited]
>>
>> Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
>> 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20w
>> msck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> (gdb) bt
>> #0 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #1 0x00007ffff71bb21b in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #2 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #3 0x00007ffff71a7884 in g_object_dispatch_properties_changed () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #4 0x00007ffff71a9834 in g_object_notify_by_pspec () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #5 0x00007ffff79afbcd in gtk_window_focus_in_event (event=<optimized out>, widget=0x1014500) at gtkwindow.c:8503
>> #6 gtk_window_focus_in_event (widget=widget@entry=0x1014500, event=<optimized out>) at gtkwindow.c:8491
>> #7 0x00007ffff79de357 in _gtk_marshal_BOOLEAN__BOXED (closure=0x10aedd0, return_value=0x7fffffffb570, n_param_values=<optimized out>, param_values=0x7fffffffb620,
>> invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:83
>> #8 0x00007ffff71a34af in g_closure_invoke () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #9 0x00007ffff71b49e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #10 0x00007ffff71bad65 in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #11 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x1014500, event=event@entry=0x7fffe4007b50) at gtkwidget.c:7808
>> #13 0x00007ffff798d472 in gtk_widget_event_internal (event=0x7fffe4007b50, widget=0x1014500) at gtkwidget.c:7379
>> #14 0x00007ffff784b37a in gtk_main_do_event (event=0x7fffe4007b50) at gtkmain.c:1861
>> #15 gtk_main_do_event (event=<optimized out>) at gtkmain.c:1691
>> #16 0x00007ffff7efc3c5 in _gdk_event_emit (event=event@entry=0x7fffe4007b50) at gdkevents.c:73
>> #17 0x00007ffff7f59352 in gdk_event_source_dispatch (base=<optimized out>, callback=<optimized out>, data=<optimized out>) at gdkeventsource.c:124
>> #18 0x00007ffff70af4cb in g_main_context_dispatch () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libglib-2.0.so.0
>> #19 0x00000000007771e4 in pgtk_read_socket (terminal=0x1079530, hold_quit=0x7fffffffba10) at pgtkterm.c:3840
>> #20 0x000000000059703c in gobble_input () at keyboard.c:7424
>> #21 0x0000000000597580 in handle_async_input () at keyboard.c:7655
>> #22 0x000000000059759f in process_pending_signals () at keyboard.c:7669
>> #23 0x00000000005975df in unblock_input_to (level=0) at keyboard.c:7684
>> #24 0x0000000000597603 in unblock_input () at keyboard.c:7703
>> #25 0x000000000058fe19 in timer_check () at keyboard.c:4749
>> #26 0x000000000058ce8a in readable_events (flags=1) at keyboard.c:3531
>> #27 0x0000000000596f04 in get_input_pending (flags=1) at keyboard.c:7374
>> #28 0x00000000005a0201 in detect_input_pending_run_timers (do_display=true) at keyboard.c:10904
>> #29 0x00000000006de504 in wait_reading_process_output (time_limit=30, nsecs=0, read_kbd=-1, do_display=true, wait_for_cell=XIL(0), wait_proc=0x0, just_wait_proc=0)
>> at process.c:5779
>> #30 0x0000000000431ef3 in sit_for (timeout=make_fixnum(30), reading=true, display_option=1) at dispnew.c:6256
>> #31 0x000000000058a731 in read_char (commandflag=1, map=XIL(0x7ffff41b4703), prev_event=XIL(0), used_mouse_menu=0x7fffffffc42f, end_time=0x0) at keyboard.c:2879
>> #32 0x000000000059e2ee in read_key_sequence (keybuf=0x7fffffffc5c0, prompt=XIL(0), dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true,
>> --Type <RET> for more, q to quit, c to continue without paging--c
>> prevent_redisplay=false) at keyboard.c:10081
>> #33 0x0000000000585bc7 in command_loop_1 () at keyboard.c:1382
>> #34 0x0000000000667131 in internal_condition_case (bfun=0x5857bc <command_loop_1>, handlers=XIL(0x90), hfun=0x584c7f <cmd_error>) at eval.c:1474
>> #35 0x00000000005853cc in command_loop_2 (handlers=XIL(0x90)) at keyboard.c:1131
>> #36 0x00000000006663ad in internal_catch (tag=XIL(0xff60), func=0x5853a9 <command_loop_2>, arg=XIL(0x90)) at eval.c:1197
>> #37 0x0000000000585365 in command_loop () at keyboard.c:1109
>> #38 0x000000000058476d in recursive_edit_1 () at keyboard.c:718
>> #39 0x0000000000584974 in Frecursive_edit () at keyboard.c:801
>> #40 0x000000000058034c in main (argc=2, argv=0x7fffffffcb08) at emacs.c:2530
>> (gdb) frame 12
>> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x1014500, event=event@entry=0x7fffe4007b50) at gtkwidget.c:7808
>> 7808 gtkwidget.c: No such file or directory.
>> (gdb) frame 12
>> #12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x1014500, event=event@entry=0x7fffe4007b50) at gtkwidget.c:7808
>> 7808 in gtkwidget.c
>> (gdb) p widget
>> $1 = (GtkWidget *) 0x1014500
>> (gdb) p Vframe_list
>> $2 = XIL(0x7ffff41d3213)
>> (gdb) xcar
>> $3 = XIL(0x107975d)
>> (gdb) xframe
>> $4 = (struct frame *) 0x1079758
>> "*scratch* - GNU Emacs at ixy"
>
> You forgot:
>
> (gdb) p *$4->output_data.pgtk
>
> Thanks.

Right, completely forgot about this one :)

Toggle snippet (112 lines)
(gdb) p *$4->output_data.pgtk
$5 = {
foreground_color = 0,
background_color = 16777215,
toolbar = 0x0,
last_user_time = 0,
current_cursor = 0x1232460,
text_cursor = 0x12a56a0,
nontext_cursor = 0x1232460,
modeline_cursor = 0x12a56a0,
hand_cursor = 0x0,
hourglass_cursor = 0x12a5760,
horizontal_drag_cursor = 0x0,
vertical_drag_cursor = 0x0,
left_edge_cursor = 0x12a5700,
top_left_corner_cursor = 0x12a5580,
top_edge_cursor = 0x12a5860,
top_right_corner_cursor = 0x1275760,
right_edge_cursor = 0x12a5800,
bottom_right_corner_cursor = 0x12a55e0,
bottom_edge_cursor = 0x12a5460,
bottom_left_corner_cursor = 0x12a5520,
current_pointer = 0x0,
border_pixel = 0,
border_color_css_provider = 0x19f14a0,
scrollbar_foreground_css_provider = 0x1275440,
scrollbar_background_css_provider = 0x1255840,
hourglass_widget = 0x0,
cursor_xgcv = {
foreground = 16777215,
background = 0
},
window_desc = 0,
parent_desc = 42,
explicit_parent = 0 '\000',
icon_bitmap = 0,
font = 0x13957a8,
baseline_offset = 0,
fontset = 2,
mouse_color = 0,
cursor_color = 0,
cursor_foreground_color = 16777215,
icon_top = 0,
icon_left = 0,
vertical_scroll_bar_extra = 0,
titlebar_height = 0,
toolbar_height = 0,
display_info = 0x118ee20,
zooming = 0,
in_animation = 0,
size_hints = {
min_width = 0,
min_height = 0,
max_width = 0,
max_height = 0,
base_width = 0,
base_height = 0,
width_inc = 0,
height_inc = 0,
min_aspect = 0,
max_aspect = 0,
win_gravity = 0
},
hint_flags = 0,
preferred_width = 672,
preferred_height = 612,
widget = 0x1014540,
edit_widget = 0x1421130,
vbox_widget = 0x14201c0,
hbox_widget = 0x1420320,
menubar_widget = 0x14541a0,
toolbar_widget = 0x1422260,
toolbar_in_hbox = false,
toolbar_is_packed = true,
ttip_widget = 0x0,
ttip_lbl = 0x0,
ttip_window = 0x0,
menubar_height = 25,
toolbar_top_height = 41,
toolbar_bottom_height = 0,
toolbar_left_width = 0,
toolbar_right_width = 0,
cr_context = 0x1345e00,
cr_active = 0x1345e00,
cr_surface_desired_width = 624,
cr_surface_desired_height = 604,
cr_surface_visible_bell = 0x0,
atimer_visible_bell = 0x0,
has_been_visible = 1,
black_relief = {
xgcv = {
foreground = 7566195,
background = 7779407
},
pixel = 7566195
},
white_relief = {
xgcv = {
foreground = 15132390,
background = 7779407
},
pixel = 15132390
},
relief_background = 12566463,
relief_background_valid_p = true,
focus_state = 0,
watched_scale_factor = 2,
scale_factor_atimer = 0x1734890
}


--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmQdJ50ACgkQIgjSCVjB
3rD1bg/9GhFyUBGKqeFBI7c9XyCn3x2+eeS8SBcSgAXHKzjLo0zVEzu5+FLOHwxC
aZW6L4jwi8XjGG4uD8vDhTr+q7EXQd5ifp/2/IrFTI+oJHOkCYfJd6wuG0sfMHrV
JnxWX9imvAriov7DMazKl9MTDzR/5HPI9aEyrxPSprdzwN2RuqC3TPMScjWs0hVj
eVQyTARtop7FWMDX28deVvdX6Cnjadbv2E6IsyVfWgFXKQc5D61NlVmzyCJnP13U
r6l43eRjwKrtOdfPlQb4F308Onr0twn4A04rAos3ow/K3LxYZ7a/iX/9+Vuhv5cz
9pKIBrKuUrA19d4DdQP79F3gyQ7I7/qRR04OvsiZw7HY0nqIj1/Ktz2tHBmdTQev
vgrzCHeO29lrW/N42tReoaKdRAKQtDN4hRdP94xN9xDmXhum61jC4LVX0geYBaa1
KQc/tldQllCqbmbjbh5BQie4UxQWtLNcU9F6QWfya37j5Q6AAvHubdYetg4nWXZd
X9AAkNpJfYo8nOz9yXYFpN4OxYxw2rgSN3LCHErALux6mkaG5r6ldSM6Yo9KuP59
Hd35iFu0wxFc99iB0e5wfTv5qb2l309UYb8Q3KH9nMjCv0YZJewVu1hvxKKfAxkK
uj1XRCgxbnH4VOG/0j2MN+yKXuBHzy5lKEwcVPcaAcEoEejSkDk=
=wwO0
-----END PGP SIGNATURE-----

P
(name . Andrew Tropin)(address . andrew@trop.in)
87fs9uy4cm.fsf@yahoo.com
Andrew Tropin <andrew@trop.in> writes:

Toggle quote (7 lines)
> preferred_width = 672,
> preferred_height = 612,
> widget = 0x1014540,
> edit_widget = 0x1421130,
> vbox_widget = 0x14201c0,
> hbox_widget = 0x1420320,

So, the window which is getting this focus in event is 0x1014500, which
is not any window created by Emacs, assuming that you have only one
frame.

Perhaps this is a pseudo window created by the GDK Wayland backend to
``send'' selection requests to Emacs.

Would you please:

(gdb) p (GdkWindow *) gtk_widget_get_window ((GtkWidget *) 0x1014500);
$NN = ...

and then:

(gdb) p (GdkWindowType) gdk_window_get_window_type ($NN);

thanks.
A
A
Andrew Tropin wrote on 24 Mar 2023 11:39
(name . Po Lu)(address . luangruo@yahoo.com)
87jzz6sab7.fsf@trop.in
On 2023-03-24 15:51, Po Lu wrote:

Toggle quote (27 lines)
> Andrew Tropin <andrew@trop.in> writes:
>
>> preferred_width = 672,
>> preferred_height = 612,
>> widget = 0x1014540,
>> edit_widget = 0x1421130,
>> vbox_widget = 0x14201c0,
>> hbox_widget = 0x1420320,
>
> So, the window which is getting this focus in event is 0x1014500, which
> is not any window created by Emacs, assuming that you have only one
> frame.
>
> Perhaps this is a pseudo window created by the GDK Wayland backend to
> ``send'' selection requests to Emacs.
>
> Would you please:
>
> (gdb) p (GdkWindow *) gtk_widget_get_window ((GtkWidget *) 0x1014500);
> $NN = ...
>
> and then:
>
> (gdb) p (GdkWindowType) gdk_window_get_window_type ($NN);
>
> thanks.

I restart the debbugger every time because otherwise my clipboard is
"locked", so the widget from p widget and from output_data.pgtk are the
same. Sorry for the confusion.

Toggle snippet (231 lines)
Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
(gdb) bt
#0 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#1 0x00007ffff71bb21b in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#2 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#3 0x00007ffff71a7884 in g_object_dispatch_properties_changed () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#4 0x00007ffff71a9834 in g_object_notify_by_pspec () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#5 0x00007ffff79afbcd in gtk_window_focus_in_event (event=<optimized out>, widget=0x109a500) at gtkwindow.c:8503
#6 gtk_window_focus_in_event (widget=widget@entry=0x109a500, event=<optimized out>) at gtkwindow.c:8491
#7 0x00007ffff79de357 in _gtk_marshal_BOOLEAN__BOXED (closure=0x10b73e0, return_value=0x7fffffffb570, n_param_values=<optimized out>, param_values=0x7fffffffb620,
invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:83
#8 0x00007ffff71a34af in g_closure_invoke () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#9 0x00007ffff71b49e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#10 0x00007ffff71bad65 in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#11 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x109a500, event=event@entry=0xfbde80) at gtkwidget.c:7808
#13 0x00007ffff798d472 in gtk_widget_event_internal (event=0xfbde80, widget=0x109a500) at gtkwidget.c:7379
#14 0x00007ffff784b37a in gtk_main_do_event (event=0xfbde80) at gtkmain.c:1861
#15 gtk_main_do_event (event=<optimized out>) at gtkmain.c:1691
#16 0x00007ffff7efc3c5 in _gdk_event_emit (event=event@entry=0xfbde80) at gdkevents.c:73
#17 0x00007ffff7f59352 in gdk_event_source_dispatch (base=<optimized out>, callback=<optimized out>, data=<optimized out>) at gdkeventsource.c:124
#18 0x00007ffff70af4cb in g_main_context_dispatch () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libglib-2.0.so.0
#19 0x00000000007771e4 in pgtk_read_socket (terminal=0x1079a00, hold_quit=0x7fffffff
ba10) at pgtkterm.c:3840
#20 0x000000000059703c in gobble_input () at keyboard.c:7424
#21 0x0000000000597580 in handle_async_input () at keyboard.c:7655
#22 0x000000000059759f in process_pending_signals () at keyboard.c:7669
#23 0x00000000005975df in unblock_input_to (level=0) at keyboard.c:7684
#24 0x0000000000597603 in unblock_input () at keyboard.c:7703
#25 0x000000000058fe19 in timer_check () at keyboard.c:4749
#26 0x000000000058ce8a in readable_events (flags=1) at keyboard.c:3531
#27 0x0000000000596f04 in get_input_pending (flags=1) at keyboard.c:7374
#28 0x00000000005a0201 in detect_input_pending_run_timers (do_display=true) at keybo
ard.c:10904
#29 0x00000000006de504 in wait_reading_process_output (time_limit=30, nsecs=0, read_
kbd=-1, do_display=true, wait_for_cell=XIL(0), wait_proc=0x0, just_wait_proc=0)
at process.c:5779
#30 0x0000000000431ef3 in sit_for (timeout=make_fixnum(30), reading=true, display_op
tion=1) at dispnew.c:6256
#31 0x000000000058a731 in read_char (commandflag=1, map=XIL(0x7ffff41bdb93), prev_ev
ent=XIL(0), used_mouse_menu=0x7fffffffc42f, end_time=0x0) at keyboard.c:2879
#32 0x000000000059e2ee in read_key_sequence (keybuf=0x7fffffffc5c0, prompt=XIL(0), d
ont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true,
prevent_redisplay=false) at keyboard.c:10081
#33 0x0000000000585bc7 in command_loop_1 () at keyboard.c:1382
#34 0x0000000000667131 in internal_condition_case (bfun=0x5857bc <command_loop_1>, h
andlers=XIL(0x90), hfun=0x584c7f <cmd_error>) at eval.c:1474
#35 0x00000000005853cc in command_loop_2 (handlers=XIL(0x90)) at keyboard.c:1131
#36 0x00000000006663ad in internal_catch (tag=XIL(0xff60), func=0x5853a9 <command_lo
op_2>, arg=XIL(0x90)) at eval.c:1197
#37 0x0000000000585365 in command_loop () at keyboard.c:1109
#38 0x000000000058476d in recursive_edit_1 () at keyboard.c:718
#39 0x0000000000584974 in Frecursive_edit () at keyboard.c:801
#40 0x000000000058034c in main (argc=2, argv=0x7fffffffcb08) at emacs.c:2530
(gdb) bt
#0 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#1 0x00007ffff71bb21b in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#2 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#3 0x00007ffff71a7884 in g_object_dispatch_properties_changed () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#4 0x00007ffff71a9834 in g_object_notify_by_pspec () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#5 0x00007ffff79afbcd in gtk_window_focus_in_event (event=<optimized out>, widget=0x109a500) at gtkwindow.c:8503
#6 gtk_window_focus_in_event (widget=widget@entry=0x109a500, event=<optimized out>) at gtkwindow.c:8491
#7 0x00007ffff79de357 in _gtk_marshal_BOOLEAN__BOXED (closure=0x10b73e0, return_value=0x7fffffffb570, n_param_values=<optimized out>, param_values=0x7fffffffb620,
invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:83
#8 0x00007ffff71a34af in g_closure_invoke () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#9 0x00007ffff71b49e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#10 0x00007ffff71bad65 in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#11 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
#12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x109a500, event=event@entry=0xfbde80) at gtkwidget.c:7808
#13 0x00007ffff798d472 in gtk_widget_event_internal (event=0xfbde80, widget=0x109a500) at gtkwidget.c:7379
#14 0x00007ffff784b37a in gtk_main_do_event (event=0xfbde80) at gtkmain.c:1861
#15 gtk_main_do_event (event=<optimized out>) at gtkmain.c:1691
#16 0x00007ffff7efc3c5 in _gdk_event_emit (event=event@entry=0xfbde80) at gdkevents.c:73
#17 0x00007ffff7f59352 in gdk_event_source_dispatch (base=<optimized out>, callback=<optimized out>, data=<optimized out>) at gdkeventsource.c:124
#18 0x00007ffff70af4cb in g_main_context_dispatch () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libglib-2.0.so.0
#19 0x00000000007771e4 in pgtk_read_socket (terminal=0x1079a00, hold_quit=0x7fffffffba10) at pgtkterm.c:3840
#20 0x000000000059703c in gobble_input () at keyboard.c:7424
#21 0x0000000000597580 in handle_async_input () at keyboard.c:7655
#22 0x000000000059759f in process_pending_signals () at keyboard.c:7669
#23 0x00000000005975df in unblock_input_to (level=0) at keyboard.c:7684
#24 0x0000000000597603 in unblock_input () at keyboard.c:7703
#25 0x000000000058fe19 in timer_check () at keyboard.c:4749
#26 0x000000000058ce8a in readable_events (flags=1) at keyboard.c:3531
#27 0x0000000000596f04 in get_input_pending (flags=1) at keyboard.c:7374
#28 0x00000000005a0201 in detect_input_pending_run_timers (do_display=true) at keyboard.c:10904
#29 0x00000000006de504 in wait_reading_process_output (time_limit=30, nsecs=0, read_kbd=-1, do_display=true, wait_for_cell=XIL(0), wait_proc=0x0, just_wait_proc=0)
at process.c:5779
--Type <RET> for more, q to quit, c to continue without paging--c
#30 0x0000000000431ef3 in sit_for (timeout=make_fixnum(30), reading=true, display_option=1) at dispnew.c:6256
#31 0x000000000058a731 in read_char (commandflag=1, map=XIL(0x7ffff41bdb93), prev_event=XIL(0), used_mouse_menu=0x7fffffffc42f, end_time=0x0) at keyboard.c:2879
#32 0x000000000059e2ee in read_key_sequence (keybuf=0x7fffffffc5c0, prompt=XIL(0), dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true, prevent_redisplay=false) at keyboard.c:10081
#33 0x0000000000585bc7 in command_loop_1 () at keyboard.c:1382
#34 0x0000000000667131 in internal_condition_case (bfun=0x5857bc <command_loop_1>, handlers=XIL(0x90), hfun=0x584c7f <cmd_error>) at eval.c:1474
#35 0x00000000005853cc in command_loop_2 (handlers=XIL(0x90)) at keyboard.c:1131
#36 0x00000000006663ad in internal_catch (tag=XIL(0xff60), func=0x5853a9 <command_loop_2>, arg=XIL(0x90)) at eval.c:1197
#37 0x0000000000585365 in command_loop () at keyboard.c:1109
#38 0x000000000058476d in recursive_edit_1 () at keyboard.c:718
#39 0x0000000000584974 in Frecursive_edit () at keyboard.c:801
#40 0x000000000058034c in main (argc=2, argv=0x7fffffffcb08) at emacs.c:2530
(gdb) frame 12
#12 0x00007ffff798ac04 in gtk_widget_event_internal (widget=widget@entry=0x109a500, event=event@entry=0xfbde80) at gtkwidget.c:7808
7808 gtkwidget.c: No such file or directory.
(gdb) p widget
$1 = (GtkWidget *) 0x109a500
(gdb) p Vframe_list
$2 = XIL(0x7ffff41d3203)
(gdb) xcar
$3 = XIL(0x1079c2d)
(gdb) xframe
$4 = (struct frame *) 0x1079c28
"*scratch* - GNU Emacs at ixy"
(gdb) p *$4->output_data.pgtk
$5 = {
foreground_color = 0,
background_color = 16777215,
toolbar = 0x0,
last_user_time = 0,
current_cursor = 0x1230860,
text_cursor = 0x12a36a0,
nontext_cursor = 0x1230860,
modeline_cursor = 0x12a36a0,
hand_cursor = 0x0,
hourglass_cursor = 0x12a3760,
horizontal_drag_cursor = 0x0,
vertical_drag_cursor = 0x0,
left_edge_cursor = 0x12a3700,
top_left_corner_cursor = 0x12a3580,
top_edge_cursor = 0x12a3860,
top_right_corner_cursor = 0x1273760,
right_edge_cursor = 0x12a3800,
bottom_right_corner_cursor = 0x12a35e0,
bottom_edge_cursor = 0x12a3460,
bottom_left_corner_cursor = 0x12a3520,
current_pointer = 0x0,
border_pixel = 0,
border_color_css_provider = 0x19a3500,
scrollbar_foreground_css_provider = 0x1273440,
scrollbar_background_css_provider = 0x1253440,
hourglass_widget = 0x0,
cursor_xgcv = {
foreground = 16777215,
background = 0
},
window_desc = 0,
--Type <RET> for more, q to quit, c to continue without paging--c
parent_desc = 42,
explicit_parent = 0 '\000',
icon_bitmap = 0,
font = 0x138eb38,
baseline_offset = 0,
fontset = 2,
mouse_color = 0,
cursor_color = 0,
cursor_foreground_color = 16777215,
icon_top = 0,
icon_left = 0,
vertical_scroll_bar_extra = 0,
titlebar_height = 0,
toolbar_height = 0,
display_info = 0x12a3000,
zooming = 0,
in_animation = 0,
size_hints = {
min_width = 0,
min_height = 0,
max_width = 0,
max_height = 0,
base_width = 0,
base_height = 0,
width_inc = 0,
height_inc = 0,
min_aspect = 0,
max_aspect = 0,
win_gravity = 0
},
hint_flags = 0,
preferred_width = 672,
preferred_height = 612,
widget = 0x109a500,
edit_widget = 0x141f130,
vbox_widget = 0x141e1c0,
hbox_widget = 0x141e320,
menubar_widget = 0x146b1a0,
toolbar_widget = 0x1420260,
toolbar_in_hbox = false,
toolbar_is_packed = true,
ttip_widget = 0x0,
ttip_lbl = 0x0,
ttip_window = 0x0,
menubar_height = 25,
toolbar_top_height = 41,
toolbar_bottom_height = 0,
toolbar_left_width = 0,
toolbar_right_width = 0,
cr_context = 0x14255e0,
cr_active = 0x14255e0,
cr_surface_desired_width = 624,
cr_surface_desired_height = 604,
cr_surface_visible_bell = 0x0,
atimer_visible_bell = 0x0,
has_been_visible = 1,
black_relief = {
xgcv = {
foreground = 7566195,
background = 7779407
},
pixel = 7566195
},
white_relief = {
xgcv = {
foreground = 15132390,
background = 7779407
},
pixel = 15132390
},
relief_background = 12566463,
relief_background_valid_p = true,
focus_state = 0,
watched_scale_factor = 2,
scale_factor_atimer = 0x104ecd0
}
(gdb) p (gdkWindow *) gtk_widget_get_window ((GtkWidget *) 0x109a500)
No symbol "gdkWindow" in current context.
(gdb) p (GdkWindow *) gtk_widget_get_window ((GtkWidget *) 0x109a500)
$6 = (GdkWindow *) 0x107e450
(gdb) p (GdkWindowType) gdk_window_get_window_type ($6)
$7 = GDK_WINDOW_TOPLEVEL
(gdb)

Additional info about the actions I do:

run emacs -Q
copy text from scratch buffer
try to insert in chromium address bar
C-g on frozen emacs
Try to toggle full screen frozen chromium
Emacs usually crashes with seg fault we are exploring right now

It seems there are some timeouts involved, because it reproduces from
time to time: sometimes it unfreezes both chromium and emacs without
crash (at least immediate crash), sometimes it crashes differently (can
show logs if you want).

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmQdfcwACgkQIgjSCVjB
3rD2UA//VLV4EkVLlyhGqQu+QQUriN77u3hIuQqB5EckdOSopXzrdc69e+o6RKcU
TT4vz+KY1qubr3e+lCzzSOZ0Wem0hUjeRl4C+VS7gY5b2pratThppqsgA6nZ4hBK
+3KwuUy3aW9+vu/7RfhLq+WTZDbiTod/6eli/nm40bxiGwOzt3UiDUrB9/CtrMpX
Tft5G/gOd9ycOmrn4v19c8Q6+2K3gEPd6t97pSyzXZ4VOZEIRRKeKCs+sgY1IOpy
MZghhBr80QLMHHqjLusXwi98YjG3LRyl9tqBu0rv1ulywq2q30wUqonDRoxJXAzX
Lg/sotXgki2dMDuF5d14mEkWLg9q9qUoFieF3NhWjIfImmz63+WGLVFjjVvZ1ZTs
o09T4yy+ESX3K/0nb5P/5/rNwHcnVZWjQZ0GA6TOsvkDzL0cNjwCMPppqcY18SFl
Q2e3lSsaHjmNwVK40n66rXiRrNC+YTWcKpaGuEtC1+yKc+27N1alxy5d25BHffWK
9vSRWfyy2GbQhi7HQxn/7SaD6KOvFb1Ut6GTlNQeOMvmoBToBC/I8cFFopHCNxqa
RHcpA2eJVbV8H+hyegHg2OqheP6lBueXEAiqBGyRQZQ6bzlec7M5lXB+sXz/r58l
2yyPaxGuFRNkjywoAcd5cES+gAfqfucpUZd20tMX/F/J2L8fbXc=
=kRIu
-----END PGP SIGNATURE-----

P
(name . Andrew Tropin)(address . andrew@trop.in)
87bkkixtpy.fsf@yahoo.com
Andrew Tropin <andrew@trop.in> writes:

Toggle quote (19 lines)
> I restart the debbugger every time because otherwise my clipboard is
> "locked", so the widget from p widget and from output_data.pgtk are the
> same. Sorry for the confusion.
>
> Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
> 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> (gdb) bt
> #0 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #1 0x00007ffff71bb21b in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #2 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #3 0x00007ffff71a7884 in g_object_dispatch_properties_changed () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #4 0x00007ffff71a9834 in g_object_notify_by_pspec () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #5 0x00007ffff79afbcd in gtk_window_focus_in_event (event=<optimized out>, widget=0x109a500) at gtkwindow.c:8503
> #6 gtk_window_focus_in_event (widget=widget@entry=0x109a500, event=<optimized out>) at gtkwindow.c:8491
> #7 0x00007ffff79de357 in _gtk_marshal_BOOLEAN__BOXED (closure=0x10b73e0, return_value=0x7fffffffb570, n_param_values=<optimized out>, param_values=0x7fffffffb620,
> invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:83
> #8 0x00007ffff71a34af in g_closure_invoke () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
> #9 0x00007ffff71b49e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0

Right, thanks for clarifying that.
Perhaps this crash is not related to the widget being destroyed.
If you install debuginfo and debug source for libgobject, then type `l',
where does it show the crash occurs?
S
S
Stefan Kangas wrote on 12 Sep 2023 02:11
(name . Po Lu)(address . luangruo@yahoo.com)(address . control@debbugs.gnu.org)
CADwFkmmTJGA+9YtPgMum=Rgfb8pTozdDT=2ALj4c9XNas2zcSg@mail.gmail.com
tags 62291 + moreinfo
thanks

Po Lu <luangruo@yahoo.com> writes:

Toggle quote (28 lines)
> Andrew Tropin <andrew@trop.in> writes:
>
>> I restart the debbugger every time because otherwise my clipboard is
>> "locked", so the widget from p widget and from output_data.pgtk are the
>> same. Sorry for the confusion.
>>
>> Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
>> 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> (gdb) bt
>> #0 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #1 0x00007ffff71bb21b in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #2 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #3 0x00007ffff71a7884 in g_object_dispatch_properties_changed () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #4 0x00007ffff71a9834 in g_object_notify_by_pspec () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #5 0x00007ffff79afbcd in gtk_window_focus_in_event (event=<optimized out>, widget=0x109a500) at gtkwindow.c:8503
>> #6 gtk_window_focus_in_event (widget=widget@entry=0x109a500, event=<optimized out>) at gtkwindow.c:8491
>> #7 0x00007ffff79de357 in _gtk_marshal_BOOLEAN__BOXED (closure=0x10b73e0,
>> return_value=0x7fffffffb570, n_param_values=<optimized out>,
>> param_values=0x7fffffffb620,
>> invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:83
>> #8 0x00007ffff71a34af in g_closure_invoke () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>> #9 0x00007ffff71b49e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>
> Right, thanks for clarifying that.
> Perhaps this crash is not related to the widget being destroyed.
> If you install debuginfo and debug source for libgobject, then type `l',
> where does it show the crash occurs?

Ping. Andrew, did you get any further with this?
A
A
Andrew Tropin wrote on 12 Sep 2023 13:24
878r9bzlag.fsf@trop.in
On 2023-09-11 17:11, Stefan Kangas wrote:

Toggle quote (35 lines)
> tags 62291 + moreinfo
> thanks
>
> Po Lu <luangruo@yahoo.com> writes:
>
>> Andrew Tropin <andrew@trop.in> writes:
>>
>>> I restart the debbugger every time because otherwise my clipboard is
>>> "locked", so the widget from p widget and from output_data.pgtk are the
>>> same. Sorry for the confusion.
>>>
>>> Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
>>> 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>>> (gdb) bt
>>> #0 0x00007ffff71b5424 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>>> #1 0x00007ffff71bb21b in g_signal_emit_valist () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>>> #2 0x00007ffff71bb722 in g_signal_emit () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>>> #3 0x00007ffff71a7884 in g_object_dispatch_properties_changed () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>>> #4 0x00007ffff71a9834 in g_object_notify_by_pspec () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>>> #5 0x00007ffff79afbcd in gtk_window_focus_in_event (event=<optimized out>, widget=0x109a500) at gtkwindow.c:8503
>>> #6 gtk_window_focus_in_event (widget=widget@entry=0x109a500, event=<optimized out>) at gtkwindow.c:8491
>>> #7 0x00007ffff79de357 in _gtk_marshal_BOOLEAN__BOXED (closure=0x10b73e0,
>>> return_value=0x7fffffffb570, n_param_values=<optimized out>,
>>> param_values=0x7fffffffb620,
>>> invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:83
>>> #8 0x00007ffff71a34af in g_closure_invoke () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>>> #9 0x00007ffff71b49e9 in signal_emit_unlocked_R.isra.0 () from /gnu/store/96srhmpmxa20wmsck95g3iq4hb3lz4a0-glib-2.70.2/lib/libgobject-2.0.so.0
>>
>> Right, thanks for clarifying that.
>> Perhaps this crash is not related to the widget being destroyed.
>> If you install debuginfo and debug source for libgobject, then type `l',
>> where does it show the crash occurs?
>
> Ping. Andrew, did you get any further with this?

I couldn't get debug symbols for libgobject, probably cause of grafts
and kinda gave up on this issue, sorry.

For the whole time we were using this fix in rde:

And recently (a few minutes ago) I found out that the problem
dissapeared, so I don't need this fix anymore. IDK, if it is due to
chromium version update or emacs.

Thank you very much for pinging! :)

I will report further in case it reappears.

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmUASncACgkQIgjSCVjB
3rAo5RAAiCKzqk5tZfHUi6zEMhFhtTjAur7jR+OvgU4tqzdCBwFOPiqJNbGl+GmC
A4ZFw+7yQyAEbcEcFkUuE6Ye8EdZC951G02IG0SQ6Mtgn1gC5uFXE1CekpdPolTn
KVj8RqlPGQ34EnP5lGSEk/FcV0CHVYle0EHFpCnW1uGYIyYHPuCALxsOKZtNnnhD
8L676Ecy2StB/ASoV7L1E8FlS0prWfKSLflob2KHuHHLwhVZCGljaudrtjbsDJPr
8LQJLAZcYz+65UpHJSZ/54+uznyvskSX8LKS6N3rlPMwmthD3qk3mtUiBIyZfLbN
6GiXN6Y+8HHwUlt5fN26TXew1YEA6ozYm6tXXFx5zD/B8rey3QJkeW7+wPc5T+VL
SOhx6yWu2lY2sij90XCJ4yqyKaY0QqgrHSKTrn8QC8KkAHOXyuU5zPRNdoJpXa0r
AchFzgQEJcSGwWQI2QIq/4PQItSq9YHNy2BBsBc/WyvesbyCrLs5HxWWg1dOhf/x
69pAY25Eec3QEHyqiZ/x54+uv2bMMZWPyQN2q03FA4QDiIX3YMHKgw2PTYThmTsU
P0i7LJuqv8mHcQfIXfStbfX2n7Q4nhF0sh95jqq8/fxTdWsZMymw8/xFQ1kG6vf6
XleghKxp/yJZ185MXs3K9pVHwlPiNGEluNjkghs7blkfZoHeCw8=
=Kta3
-----END PGP SIGNATURE-----

S
S
Stefan Kangas wrote on 12 Sep 2023 16:50
CADwFkmnDiXVVqajEZX8JJ=0kK7AC+E2h7_vr3_YK4Z-Dq+Wn=g@mail.gmail.com
Andrew Tropin <andrew@trop.in> writes:

Toggle quote (12 lines)
>> Ping. Andrew, did you get any further with this?
>
> I couldn't get debug symbols for libgobject, probably cause of grafts
> and kinda gave up on this issue, sorry.
>
> For the whole time we were using this fix in rde:
> https://git.sr.ht/~abcdw/rde/tree/8d6a6b47/src/rde/features/emacs.scm#L217
>
> And recently (a few minutes ago) I found out that the problem
> dissapeared, so I don't need this fix anymore. IDK, if it is due to
> chromium version update or emacs.

Great, and thank you for reporting back.

I'm therefore closing this bug report.

Toggle quote (4 lines)
> Thank you very much for pinging! :)
>
> I will report further in case it reappears.

Please do, thanks in advance.
Closed
?