summaryrefslogtreecommitdiff
path: root/apps/gui/skin_engine
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2013-12-29 17:53:19 +1100
committerJonathan Gordon <rockbox@jdgordon.info>2013-12-29 18:00:38 +1100
commit00b3fd2a667d95c80a7086a8698210b308850968 (patch)
treeab773c77d7bf781c6fe5b699c1d851b59b8c088a /apps/gui/skin_engine
parent8566cd7ebf19544db29cc637a5874355849c64d0 (diff)
downloadrockbox-00b3fd2a667d95c80a7086a8698210b308850968.tar.gz
rockbox-00b3fd2a667d95c80a7086a8698210b308850968.zip
skin_engine: unload skin backdrops when the skins are reset
Hopefully this will fix various skin related bugs which happen on usb plug/unplug! Change-Id: Ie1d8378fca38dae02e42ed02a68bdb3663651b4d
Diffstat (limited to 'apps/gui/skin_engine')
-rw-r--r--apps/gui/skin_engine/skin_engine.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/apps/gui/skin_engine/skin_engine.c b/apps/gui/skin_engine/skin_engine.c
index fd8381edbd..8b3efda6ae 100644
--- a/apps/gui/skin_engine/skin_engine.c
+++ b/apps/gui/skin_engine/skin_engine.c
@@ -133,6 +133,8 @@ void gui_sync_skin_init(void)
133 FOR_NB_SCREENS(i) 133 FOR_NB_SCREENS(i)
134 { 134 {
135 skin_data_free_buflib_allocs(&skins[j][i].data); 135 skin_data_free_buflib_allocs(&skins[j][i].data);
136 if (skins[j][i].data.backdrop_id != -1)
137 skin_backdrop_unload(skins[j][i].data.backdrop_id);
136 gui_skin_reset(&skins[j][i]); 138 gui_skin_reset(&skins[j][i]);
137 skins[j][i].gui_wps.display = &screens[i]; 139 skins[j][i].gui_wps.display = &screens[i];
138 } 140 }