gui/fading-label: Do not snapshot empty cached text node

When a label has empty text or an empty PangoLayout,
gtk_snapshot_free_to_node() returns NULL. Passing NULL to
gtk_snapshot_append_node() triggers a critical assertion failure
which causes an abort under G_DEBUG=fatal-criticals.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/808>
This commit is contained in:
John Cardullo
2026-10-27 11:10:58 -07:00
parent c7b1c977f7
commit c1eca94482
+3
View File
@@ -178,6 +178,9 @@ gcal_fading_label_snapshot (GtkWidget *widget,
self->cached_text_node = gtk_snapshot_free_to_node (g_steal_pointer (&text_snapshot));
}
if (!self->cached_text_node)
return;
if (self->cached_extents.x + self->cached_extents.width <= width)
{
gtk_snapshot_append_node (snapshot, self->cached_text_node);