ShellApp: Avoid crashing during state transition for window-backed apps
During a state transition from running to not-running for window-backend apps, it's possible we get a request for the icon. Avoid asserting here and just return an empty image. https://bugzilla.gnome.org/show_bug.cgi?id=656546
This commit is contained in:
parent
712ea9b9b6
commit
fa0268f35a
@ -133,8 +133,22 @@ static ClutterActor *
|
|||||||
window_backed_app_get_icon (ShellApp *app,
|
window_backed_app_get_icon (ShellApp *app,
|
||||||
int size)
|
int size)
|
||||||
{
|
{
|
||||||
MetaWindow *window = window_backed_app_get_window (app);
|
MetaWindow *window;
|
||||||
ClutterActor *actor = st_texture_cache_bind_pixbuf_property (st_texture_cache_get_default (),
|
ClutterActor *actor;
|
||||||
|
|
||||||
|
/* During a state transition from running to not-running for
|
||||||
|
* window-backend apps, it's possible we get a request for the icon.
|
||||||
|
* Avoid asserting here and just return an empty image.
|
||||||
|
*/
|
||||||
|
if (app->running_state == NULL)
|
||||||
|
{
|
||||||
|
actor = clutter_texture_new ();
|
||||||
|
g_object_set (actor, "opacity", 0, "width", (float) size, "height", (float) size, NULL);
|
||||||
|
return actor;
|
||||||
|
}
|
||||||
|
|
||||||
|
window = window_backed_app_get_window (app);
|
||||||
|
actor = st_texture_cache_bind_pixbuf_property (st_texture_cache_get_default (),
|
||||||
G_OBJECT (window),
|
G_OBJECT (window),
|
||||||
"icon");
|
"icon");
|
||||||
g_object_set (actor, "width", (float) size, "height", (float) size, NULL);
|
g_object_set (actor, "width", (float) size, "height", (float) size, NULL);
|
||||||
|
Loading…
Reference in New Issue
Block a user