summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Müllner <fmuellner@gnome.org>2016-04-15 17:05:04 (GMT)
committerFlorian Müllner <fmuellner@gnome.org>2016-04-15 17:05:04 (GMT)
commit8416ba25de3797c1fdfd49b2a598f3e380713129 (patch)
tree43336d9df171412eecb514474d49fe2c6bcb0f43
parent63f6ff91516bb484fc6de50ecabc791095d81b81 (diff)
downloadgnome-shell-8416ba25de3797c1fdfd49b2a598f3e380713129.zip
gnome-shell-8416ba25de3797c1fdfd49b2a598f3e380713129.tar.xz
st: Don't assert when corner texture creation fails
-rw-r--r--src/st/st-theme-node-drawing.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/st/st-theme-node-drawing.c b/src/st/st-theme-node-drawing.c
index 057b716..85feb20 100644
--- a/src/st/st-theme-node-drawing.c
+++ b/src/st/st-theme-node-drawing.c
@@ -182,7 +182,6 @@ create_corner_material (StCornerSpec *corner)
}
g_free (data);
- g_assert (texture != COGL_INVALID_HANDLE);
return texture;
}
@@ -355,7 +354,7 @@ st_theme_node_lookup_corner (StThemeNode *node,
float height,
StCorner corner_id)
{
- CoglHandle texture, material;
+ CoglHandle texture, material = COGL_INVALID_HANDLE;
char *key;
StTextureCache *cache;
StCornerSpec corner;
@@ -404,8 +403,12 @@ st_theme_node_lookup_corner (StThemeNode *node,
key = corner_to_string (&corner);
texture = st_texture_cache_load (cache, key, ST_TEXTURE_CACHE_POLICY_NONE, load_corner, &corner, NULL);
- material = _st_create_texture_pipeline (texture);
- cogl_handle_unref (texture);
+
+ if (texture)
+ {
+ material = _st_create_texture_pipeline (texture);
+ cogl_handle_unref (texture);
+ }
g_free (key);