From d314333589279f8e916f10b9e60da5892868c865 Mon Sep 17 00:00:00 2001 From: yoshida_teruhisa Date: Thu, 4 Sep 2008 04:43:42 +0000 Subject: [PATCH] =?UTF-8?q?=E3=83=9B=E3=83=AF=E3=82=A4=E3=83=88=E3=83=AA?= =?UTF-8?q?=E3=82=B9=E3=83=88=E3=83=81=E3=82=A7=E3=83=83=E3=82=AF=E6=99=82?= =?UTF-8?q?=E3=81=AE=E3=82=A8=E3=83=A9=E3=83=BC=E5=87=BA=E5=8A=9B=E5=BC=B7?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@2395 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- build/libraries_sysmenu/sysmenu/ARM9/src/title.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/build/libraries_sysmenu/sysmenu/ARM9/src/title.c b/build/libraries_sysmenu/sysmenu/ARM9/src/title.c index 2f95a657..807d9815 100644 --- a/build/libraries_sysmenu/sysmenu/ARM9/src/title.c +++ b/build/libraries_sysmenu/sysmenu/ARM9/src/title.c @@ -1441,7 +1441,7 @@ static BOOL SYSMi_AuthenticateNTRCardAppHeader( TitleProperty *pBootTitle, ROM_H static BOOL SYSMi_AuthenticateNTRCardTitle( TitleProperty *pBootTitle) { #pragma unused(pBootTitle) - DHTPhase2Work* p2work; + DHTPhase2Work* p2work = NULL; ROM_Header_Short *hs = ( ROM_Header_Short *)SYSM_APP_ROM_HEADER_BUF; // phase1最終検証 @@ -1452,6 +1452,8 @@ static BOOL SYSMi_AuthenticateNTRCardTitle( TitleProperty *pBootTitle) { OS_TPrintf("DHT Phase1 failed: hash check failed.\n"); if(!s_b_dev) { + // デバグ用。ERRORLOG_Init()がすでに呼ばれている事前提 + ERRORLOG_Printf( "DHT_PAHSE1_FAILED (sub info): hash0Addr-%08x\n", hash0 ); UTL_SetFatalError(FATAL_ERROR_DHT_PHASE1_FAILED); return FALSE; } @@ -1471,16 +1473,18 @@ static BOOL SYSMi_AuthenticateNTRCardTitle( TitleProperty *pBootTitle) // DHTチェックphase2 OS_TPrintf("DHT Phase2..."); p2work = SYSM_Alloc( sizeof(DHTPhase2Work) ); - if ( !hash1 || !DHT_CheckHashPhase2(hash1, hs, p2work, WrapperFunc_ReadCardData, NULL) ) + if ( !p2work || !hash1 || !DHT_CheckHashPhase2(hash1, hs, p2work, WrapperFunc_ReadCardData, NULL) ) { OS_TPrintf(" DHT Phase2 : Failed.\n"); if(!s_b_dev){ - SYSM_Free(p2work); + // デバグ用。ERRORLOG_Init()がすでに呼ばれている事前提 + ERRORLOG_Printf( "DHT_PAHSE2_FAILED (sub info): p2workAddr-%08x hash1Addr-%08x\n", p2work, hash1 ); + if( p2work ) SYSM_Free(p2work); UTL_SetFatalError(FATAL_ERROR_DHT_PHASE2_FAILED); return FALSE; } } - SYSM_Free(p2work); + if( p2work ) SYSM_Free(p2work); return TRUE; }