NAMUT_Formatでシステムアプリのセーブデータの乱数クリアを行うのを廃止。(そのタイミングでHWリセット等が発生した場合Badフォーマットとなるため)

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@2354 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
kamikawa 2008-09-02 03:05:53 +00:00
parent f896ce3529
commit 504cc9eca6

View File

@ -84,6 +84,7 @@ static BOOL NAMUTi_ClearSavedataAll(void);
static BOOL NAMUTi_InitShareData(void); static BOOL NAMUTi_InitShareData(void);
static BOOL NAMUTi_MountAndFormatOtherTitleSaveData(u64 titleID, const char *arcname); static BOOL NAMUTi_MountAndFormatOtherTitleSaveData(u64 titleID, const char *arcname);
static BOOL NAMUTi_RandClearFile(const char* path); static BOOL NAMUTi_RandClearFile(const char* path);
static BOOL NAMUTi_CheckExistenceFile(const char* path);
static BOOL NAMUTi_ClearWiFiSettings( void ); static BOOL NAMUTi_ClearWiFiSettings( void );
static BOOL NAMUTi_DeleteShopAccount( void ); static BOOL NAMUTi_DeleteShopAccount( void );
static void* NAMUT_Alloc(u32 size); static void* NAMUT_Alloc(u32 size);
@ -450,8 +451,6 @@ static BOOL NAMUTi_ClearSavedataAll( void )
u32 title_num; u32 title_num;
NAMTitleId* pTitleIdArray; NAMTitleId* pTitleIdArray;
NAMTitleInfo namTitleInfo; NAMTitleInfo namTitleInfo;
char savePublicPath[ FS_ENTRY_LONGNAME_MAX ];
char savePrivatePath[ FS_ENTRY_LONGNAME_MAX ];
char subBannerPath[ FS_ENTRY_LONGNAME_MAX ]; char subBannerPath[ FS_ENTRY_LONGNAME_MAX ];
BOOL ret = TRUE; BOOL ret = TRUE;
s32 i; s32 i;
@ -480,21 +479,16 @@ static BOOL NAMUTi_ClearSavedataAll( void )
// タイトル情報取得 // タイトル情報取得
if( NAM_ReadTitleInfo(&namTitleInfo, pTitleIdArray[i]) == NAM_OK ) if( NAM_ReadTitleInfo(&namTitleInfo, pTitleIdArray[i]) == NAM_OK )
{ {
// セーブファイルパス取得 // publicSaveSizeが0以上ならフォーマット
if (NAM_GetTitleSaveFilePath(savePublicPath, savePrivatePath, pTitleIdArray[i]) == NAM_OK) if (namTitleInfo.publicSaveSize > 0)
{ {
// publicSaveSizeが0以上なら乱数クリアフォーマット ret &= NAMUTi_MountAndFormatOtherTitleSaveData(namTitleInfo.titleId, "otherPub");
if (namTitleInfo.publicSaveSize > 0) }
{ // privateSaveSizeが0以上ならフォーマット
ret &= NAMUTi_ClearSavedataPublic(savePublicPath, namTitleInfo.titleId); if (namTitleInfo.privateSaveSize > 0)
} {
// privateSaveSizeが0以上なら乱数クリアフォーマット ret &= NAMUTi_MountAndFormatOtherTitleSaveData(namTitleInfo.titleId, "otherPrv");
if (namTitleInfo.privateSaveSize > 0)
{
ret &= NAMUTi_ClearSavedataPrivate(savePrivatePath, namTitleInfo.titleId);
}
} }
else { ret = FALSE; }
// サブバナーファイルパス取得 // サブバナーファイルパス取得
if (NAM_GetTitleBannerFilePath( subBannerPath, namTitleInfo.titleId) == NAM_OK) if (NAM_GetTitleBannerFilePath( subBannerPath, namTitleInfo.titleId) == NAM_OK)
@ -706,9 +700,9 @@ static BOOL NAMUTi_InitShareData(void)
for (i=0;i<NAMUT_SHARE_ARCHIVE_MAX;i++) for (i=0;i<NAMUT_SHARE_ARCHIVE_MAX;i++)
{ {
// 乱数クリア // ファイルの存在を確認
STD_TSNPrintf(path, NAM_PATH_LEN, "nand:/shared2/000%d", i); STD_TSNPrintf(path, NAM_PATH_LEN, "nand:/shared2/000%d", i);
if (NAMUTi_RandClearFile(path) == FALSE) if (NAMUTi_CheckExistenceFile(path) == FALSE)
{ {
// ファイルが存在しないものとみなす // ファイルが存在しないものとみなす
OS_TPrintf("%s is not exist\n", path); OS_TPrintf("%s is not exist\n", path);
@ -806,6 +800,30 @@ static BOOL NAMUTi_RandClearFile(const char* path)
return TRUE; return TRUE;
} }
/*---------------------------------------------------------------------------*
Name: NAMUTi_CheckExistenceFile
Description:
Arguments: path
Returns: TRUE
*---------------------------------------------------------------------------*/
static BOOL NAMUTi_CheckExistenceFile(const char* path)
{
FSFile file;
FS_InitFile(&file);
if (!FS_OpenFileEx(&file, path, FS_FILEMODE_R))
{
return FALSE;
}
FS_CloseFile(&file);
return TRUE;
}
/*---------------------------------------------------------------------------* /*---------------------------------------------------------------------------*
Name: NAMUT_GetSoftBoxCount Name: NAMUT_GetSoftBoxCount