Merge pull request #269 from LiquidFenrir/patch-2
fix dumping official body and bgm, and double free
This commit is contained in:
@@ -505,6 +505,7 @@ Result dump_all_themes(void)
|
|||||||
res = AMAPP_ListDLCContentInfos(&readcount, MEDIATYPE_SD, titleId, count, 0, contentInfos);
|
res = AMAPP_ListDLCContentInfos(&readcount, MEDIATYPE_SD, titleId, count, 0, contentInfos);
|
||||||
if(R_FAILED(res))
|
if(R_FAILED(res))
|
||||||
{
|
{
|
||||||
|
free(contentInfos);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -551,6 +552,8 @@ Result dump_all_themes(void)
|
|||||||
|
|
||||||
FILE* fh = fopen(contentinfoarchive_path, "rb");
|
FILE* fh = fopen(contentinfoarchive_path, "rb");
|
||||||
|
|
||||||
|
if(fh != NULL)
|
||||||
|
{
|
||||||
for(u32 i = 0; i < readcount; ++i)
|
for(u32 i = 0; i < readcount; ++i)
|
||||||
{
|
{
|
||||||
if(i == 0) continue;
|
if(i == 0) continue;
|
||||||
@@ -571,11 +574,6 @@ Result dump_all_themes(void)
|
|||||||
if(R_FAILED(res))
|
if(R_FAILED(res))
|
||||||
{
|
{
|
||||||
DEBUG("theme open romfs error: %08lx\n", res);
|
DEBUG("theme open romfs error: %08lx\n", res);
|
||||||
fclose(fh);
|
|
||||||
free(contentInfos);
|
|
||||||
romfsUnmount("meta");
|
|
||||||
FSUSER_CloseArchive(ncch_archive);
|
|
||||||
free(contentInfos);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -602,7 +600,7 @@ Result dump_all_themes(void)
|
|||||||
{
|
{
|
||||||
fseek(theme_file, 0, SEEK_END);
|
fseek(theme_file, 0, SEEK_END);
|
||||||
long theme_size = ftell(theme_file);
|
long theme_size = ftell(theme_file);
|
||||||
fseek(theme_file, 0, SEEK_CUR);
|
fseek(theme_file, 0, SEEK_SET);
|
||||||
char* theme_data = malloc(theme_size);
|
char* theme_data = malloc(theme_size);
|
||||||
fread(theme_data, 1, theme_size, theme_file);
|
fread(theme_data, 1, theme_size, theme_file);
|
||||||
fclose(theme_file);
|
fclose(theme_file);
|
||||||
@@ -619,7 +617,7 @@ Result dump_all_themes(void)
|
|||||||
{
|
{
|
||||||
fseek(bgm_file, 0, SEEK_END);
|
fseek(bgm_file, 0, SEEK_END);
|
||||||
long bgm_size = ftell(bgm_file);
|
long bgm_size = ftell(bgm_file);
|
||||||
fseek(bgm_file, 0, SEEK_CUR);
|
fseek(bgm_file, 0, SEEK_SET);
|
||||||
char* bgm_data = malloc(bgm_size);
|
char* bgm_data = malloc(bgm_size);
|
||||||
fread(bgm_data, 1, bgm_size, bgm_file);
|
fread(bgm_data, 1, bgm_size, bgm_file);
|
||||||
fclose(bgm_file);
|
fclose(bgm_file);
|
||||||
@@ -646,6 +644,7 @@ Result dump_all_themes(void)
|
|||||||
|
|
||||||
fclose(fh);
|
fclose(fh);
|
||||||
fh = NULL;
|
fh = NULL;
|
||||||
|
}
|
||||||
free(contentInfos);
|
free(contentInfos);
|
||||||
contentInfos = NULL;
|
contentInfos = NULL;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user