Fix skin_engine.c Album Art never dealloc'd on theme change
Patch from forum user Chris_s http://forums.rockbox.org/index.php/topic,52708.0.html Change-Id: I29f8702ced300d1dc90dfa0e8baa609b9051903e
This commit is contained in:
parent
ed269affb5
commit
075108e34a
2 changed files with 8 additions and 0 deletions
|
@ -39,6 +39,9 @@
|
||||||
#define FAILSAFENAME "rockbox_failsafe"
|
#define FAILSAFENAME "rockbox_failsafe"
|
||||||
|
|
||||||
void skin_data_free_buflib_allocs(struct wps_data *wps_data);
|
void skin_data_free_buflib_allocs(struct wps_data *wps_data);
|
||||||
|
#ifdef HAVE_ALBUMART
|
||||||
|
void playback_release_aa_slot(int slot);
|
||||||
|
#endif
|
||||||
char* wps_default_skin(enum screen_type screen);
|
char* wps_default_skin(enum screen_type screen);
|
||||||
char* default_radio_skin(enum screen_type screen);
|
char* default_radio_skin(enum screen_type screen);
|
||||||
static bool skins_initialised = false;
|
static bool skins_initialised = false;
|
||||||
|
@ -169,6 +172,10 @@ void settings_apply_skins(void)
|
||||||
if (!first_run)
|
if (!first_run)
|
||||||
{
|
{
|
||||||
skin_data_free_buflib_allocs(&skins[i][j].data);
|
skin_data_free_buflib_allocs(&skins[i][j].data);
|
||||||
|
#ifdef HAVE_ALBUMART
|
||||||
|
if (skins[i][j].data.playback_aa_slot >= 0)
|
||||||
|
playback_release_aa_slot(skins[i][j].data.playback_aa_slot);
|
||||||
|
#endif
|
||||||
#ifdef HAVE_BACKDROP_IMAGE
|
#ifdef HAVE_BACKDROP_IMAGE
|
||||||
if (skins[i][j].data.backdrop_id >= 0)
|
if (skins[i][j].data.backdrop_id >= 0)
|
||||||
skin_backdrop_unload(skins[i][j].data.backdrop_id);
|
skin_backdrop_unload(skins[i][j].data.backdrop_id);
|
||||||
|
|
|
@ -675,6 +675,7 @@ Nathan Follens
|
||||||
Gergely Békési
|
Gergely Békési
|
||||||
Stephane Doyon
|
Stephane Doyon
|
||||||
Alex Wallis
|
Alex Wallis
|
||||||
|
Christian Soffke
|
||||||
|
|
||||||
The libmad team
|
The libmad team
|
||||||
The wavpack team
|
The wavpack team
|
||||||
|
|
Loading…
Reference in a new issue