アプリリスト取得時にエラーが発生するとアプリを消していた問題の修正を修正

エラーが発生したらフェータルに落としていた処理を、
エラーが起きたアプリがシステムアプリだったらフェータルに落とし、ユーザアプリだったらアプリを削除する。


git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@3006 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
(no author) 2011-04-04 00:35:50 +00:00
parent 2720e6a906
commit 9570f1532d

View File

@ -380,7 +380,6 @@ static void AMN_initCardTitleList_()
{
}
#if 0
// 指定されたtitleIDのタイトルツリーを消去
#define TITLE_TREE_PATH_LENGTH 12+8+1+8+1
static void AMNi_deleteTitleTree( NAMTitleId titleID )
@ -390,7 +389,6 @@ static void AMNi_deleteTitleTree( NAMTitleId titleID )
(void)FS_DeleteDirectoryAuto( path );
OS_TPrintf( "AMNi_deleteTitleTree : delete %s\n", path );
}
#endif
static BOOL AMNi_getAndAddNandTitleData( NAMTitleId titleID, BOOL readShowData )
{
@ -434,8 +432,19 @@ static BOOL AMNi_getAndAddNandTitleData( NAMTitleId titleID, BOOL readShowData )
if(readLen != NAM_OK){
// error
SDK_ASSERT( FALSE );
// フェータルエラーを設定
UTL_SetFatalError( FATAL_ERROR_LOAD_OPENFILE_FAILED );
// システムアプリの場合はフェータルに落とし、ユーザーアプリの場合は削除する
if( titleID & TITLE_ID_APP_TYPE_MASK )
{
// フェータルエラーを設定
UTL_SetFatalError( FATAL_ERROR_LOAD_OPENFILE_FAILED );
}
else
{
// アプリを削除
AMNi_deleteTitleTree( titleID );
}
return FALSE;
}
@ -449,8 +458,19 @@ static BOOL AMNi_getAndAddNandTitleData( NAMTitleId titleID, BOOL readShowData )
{
// error
SDK_ASSERT( FALSE );
// フェータルエラーを設定
UTL_SetFatalError( FATAL_ERROR_LOAD_OPENFILE_FAILED );
// システムアプリの場合はフェータルに落とし、ユーザーアプリの場合は削除する
if( titleID & TITLE_ID_APP_TYPE_MASK )
{
// フェータルエラーを設定
UTL_SetFatalError( FATAL_ERROR_LOAD_OPENFILE_FAILED );
}
else
{
// アプリを削除
AMNi_deleteTitleTree( titleID );
}
return FALSE;
}
@ -465,8 +485,19 @@ static BOOL AMNi_getAndAddNandTitleData( NAMTitleId titleID, BOOL readShowData )
// error
SDK_ASSERT( FALSE );
FS_CloseFile(file);
// フェータルエラーを設定
UTL_SetFatalError( FATAL_ERROR_LOAD_READHEADER_FAILED );
// システムアプリの場合はフェータルに落とし、ユーザーアプリの場合は削除する
if( titleID & TITLE_ID_APP_TYPE_MASK )
{
// フェータルエラーを設定
UTL_SetFatalError( FATAL_ERROR_LOAD_READHEADER_FAILED );
}
else
{
// アプリを削除
AMNi_deleteTitleTree( titleID );
}
return FALSE;
}