Crash when clicking a modified Google event right after editing it (due to the preview popover)
- Fedora 38
If an event from a Google calendar is edited, and I click on it right after editing it, Calendar crashes or gets unresponsive.
- The event needs to be from Google calendar (or possibly other remote source), it doesn't crash with a local calendar
- I can edit e.g. event name or location
- To trigger this, I have to click on the event quite quickly after confirming the change. It seems that if I click on the event before the change is submitted to Google servers and then refreshed, it triggers this problem. If I wait for a few seconds and then click on the event, it's fine.
- There are two options, either it crashes, or the window becomes unresponsive, nothing can be clicked on, and it can't be closed either (gnome-shell doesn't invoke the unresponsive window dialog, so the only option is to send sigterm to the process, to close the window).
Steps to reproduce
- Create an event in a Google calendar
- Edit the event name
- Immediately click on the event again
Relevant logs, screenshots, screencasts etc.
There's a crash report in downstream bug:
Here's an excerpt:
Thread no. 1 (16 frames) #0 _gtk_widget_is_sensitive at ../gtk/gtkwidgetprivate.h:482 #1 gtk_propagate_event_internal.isra.0 at ../gtk/gtkmain.c:1918 #2 gtk_main_do_event at ../gtk/gtkmain.c:1703 #3 surface_event at ../gtk/gtkwindow.c:4747 #4 _gdk_marshal_BOOLEAN__POINTERv at gdk/gdkmarshalers.c:302 #5 gdk_surface_event_marshallerv at ../gdk/gdksurface.c:463 #6 _g_closure_invoke_va at ../gobject/gclosure.c:895 #9 gdk_surface_handle_event.isra.0 at ../gdk/gdksurface.c:2956 #10 gdk_surface_ensure_motion at ../gdk/gdksurface.c:2473 #11 gdk_surface_flush_events at ../gdk/gdksurface.c:2484 #13 signal_emit_unlocked_R.isra.0 at ../gobject/gsignal.c:3802 #16 _gdk_frame_clock_emit_flush_events at ../gdk/gdkframeclock.c:668 #17 gdk_frame_clock_flush_idle at ../gdk/gdkframeclockidle.c:369 #21 g_main_context_iterate.isra.0 at ../glib/gmain.c:4276 #22 g_main_context_iteration at ../glib/gmain.c:4343 #23 g_application_run at ../gio/gapplication.c:2573