summaryrefslogtreecommitdiff
path: root/components/gui/src/image_container.c
diff options
context:
space:
mode:
authoryangfasheng <[email protected]>2017-12-12 19:46:38 +0800
committeryangfasheng <[email protected]>2017-12-12 19:46:38 +0800
commit2d98c0e7be8e0803de4b4e8e9ba03635bcef91c8 (patch)
tree2369b56b2cb936de281b8e8b335da94828298af3 /components/gui/src/image_container.c
parent44e17aa2772a48697604ba1122da4a0bb9015414 (diff)
gui 引擎代码更新;
Diffstat (limited to 'components/gui/src/image_container.c')
-rw-r--r--components/gui/src/image_container.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/components/gui/src/image_container.c b/components/gui/src/image_container.c
index 66b7191271..f86300c6ef 100644
--- a/components/gui/src/image_container.c
+++ b/components/gui/src/image_container.c
@@ -393,13 +393,18 @@ rtgui_image_item_t *rtgui_image_container_get(const char *filename)
if (item == RT_NULL)
{
item = (struct rtgui_image_item *) rtgui_malloc(sizeof(struct rtgui_image_item));
- if (item == RT_NULL) return RT_NULL;
+ if (item == RT_NULL)
+ {
+ rt_mutex_release(&_image_hash_lock);
+ return RT_NULL;
+ }
/* create a image object */
item->image = rtgui_image_create(filename, RT_TRUE);
if (item->image == RT_NULL)
{
rtgui_free(item);
+ rt_mutex_release(&_image_hash_lock);
return RT_NULL; /* create image failed */
}
item->refcount = 1;