st/icon: Always show empty texture if both gicons are NULL

Commit 7ff7fb5d3b forgot to clear the
`priv->icon_texture` actor when returning from st_icon_update(), which
means we don't always switch to an empty icon if both gicon properties
are set to NULL.

Fix this and destroy the actor before returning early from
st_icon_update().

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1178


(cherry picked from commit 07deda593a)
This commit is contained in:
Jonas Dreßler 2020-04-04 08:12:06 +00:00 committed by Florian Müllner
parent 6d38a4a7b3
commit 51e9f19f2f

View File

@ -419,7 +419,10 @@ st_icon_update (StIcon *icon)
} }
if (priv->gicon == NULL && priv->fallback_gicon == NULL) if (priv->gicon == NULL && priv->fallback_gicon == NULL)
return; {
g_clear_pointer (&priv->icon_texture, clutter_actor_destroy);
return;
}
if (!st_widget_get_resource_scale (ST_WIDGET (icon), &resource_scale)) if (!st_widget_get_resource_scale (ST_WIDGET (icon), &resource_scale))
return; return;