From c6f44637c48af50dc9193fb612fd8ceacc8b6578 Mon Sep 17 00:00:00 2001 From: N2614 Date: Fri, 20 Jan 2012 08:28:22 +0000 Subject: [PATCH] =?UTF-8?q?=E3=83=80=E3=82=A6=E3=83=B3=E3=83=AD=E3=83=BC?= =?UTF-8?q?=E3=83=89=E5=89=8D=E3=81=AB=E5=A4=96=E9=83=A8=E3=82=BF=E3=82=A4?= =?UTF-8?q?=E3=83=88=E3=83=AB=E3=83=87=E3=83=BC=E3=82=BF=E3=83=99=E3=83=BC?= =?UTF-8?q?=E3=82=B9=E3=82=92=E5=88=9D=E6=9C=9F=E5=8C=96=E3=81=99=E3=82=8B?= =?UTF-8?q?=E3=82=88=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_Repair@590 385bec56-5757-e545-9c3a-d8741f4650f1 --- .../sources/ConsoleRestore/PreinstallImporter.cpp | 13 +++++++++++++ .../sources/ConsoleRestore/PreinstallImporter.h | 3 +++ .../sources/ConsoleRestore/TitleDownloader.cpp | 14 ++++++-------- .../sources/ConsoleRestore/TitleDownloader.h | 2 ++ 4 files changed, 24 insertions(+), 8 deletions(-) diff --git a/trunk/ConsoleDataMigration/sources/ConsoleRestore/PreinstallImporter.cpp b/trunk/ConsoleDataMigration/sources/ConsoleRestore/PreinstallImporter.cpp index 3626349..0f68564 100644 --- a/trunk/ConsoleDataMigration/sources/ConsoleRestore/PreinstallImporter.cpp +++ b/trunk/ConsoleDataMigration/sources/ConsoleRestore/PreinstallImporter.cpp @@ -20,6 +20,7 @@ #include "SimpleXmlPreprocessor.h" #include #include +#include namespace ConsoleRestore { @@ -35,6 +36,18 @@ PreinstallImporter::~PreinstallImporter() // TODO Auto-generated destructor stub } +nn::Result PreinstallImporter::CleanUpAndSetupSd() +{ + // TODO:SDカードのセーブデータを削除する? + + // タイトルデータベースを作成する + NN_UTIL_RETURN_IF_FAILED( + nn::am::InitializeExternalTitleDatabase(true) + ); + + return nn::ResultSuccess(); +} + nn::Result PreinstallImporter::ListTitles(nn::ProgramId* list, size_t* num, bit64 deviceId, u8* serialNo) { // 送信用のXMLデータを構築する diff --git a/trunk/ConsoleDataMigration/sources/ConsoleRestore/PreinstallImporter.h b/trunk/ConsoleDataMigration/sources/ConsoleRestore/PreinstallImporter.h index 618f511..2baa8ba 100644 --- a/trunk/ConsoleDataMigration/sources/ConsoleRestore/PreinstallImporter.h +++ b/trunk/ConsoleDataMigration/sources/ConsoleRestore/PreinstallImporter.h @@ -30,6 +30,9 @@ public: PreinstallImporter(); virtual ~PreinstallImporter(); + //! @brief 不要なSDカードのデータを削除して、新たにタイトルデータベースを作成します + nn::Result CleanUpAndSetupSd(); + //! @brief ダウンロードするプリインストールタイトルをBGS経由でリストアップする //! @param[out] list    プリインストールタイトルの配列。十分に大きいものを渡すこと。 //! @param[out] num プリインストールタイトルの数 diff --git a/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.cpp b/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.cpp index 2dee96c..6e3581d 100644 --- a/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.cpp +++ b/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.cpp @@ -125,10 +125,7 @@ void TwlTitleDownloaderThreadFunc() size_t num = 0; nn::ProgramId list[256]; TitleDownloader::m_Result = ListUpTwlTitles(list, &num); - if(TitleDownloader::m_Result.IsFailure()) - { - return; - } + NN_UTIL_RETURN_IF_FAILED(TitleDownloader::m_Result); TwlTitleDownloader.SetupTitleList(list, num); TwlTitleDownloader.Start(); } @@ -138,14 +135,14 @@ void PreinstallTitleDownloaderThreadFunc(PreinstallListupParam param) TitleDownloader PreinstallTitleDownloader; PreinstallImporter importer; + TitleDownloader::m_Result = importer.CleanUpAndSetupSd(); + NN_UTIL_RETURN_IF_FAILED(TitleDownloader::m_Result); + s_Progress = 0; size_t num = 0; nn::ProgramId list[256]; TitleDownloader::m_Result = importer.ListTitles(list, &num, param.deviceId, param.serialNo); - if(TitleDownloader::m_Result.IsFailure()) - { - return; - } + NN_UTIL_RETURN_IF_FAILED(TitleDownloader::m_Result); PreinstallTitleDownloader.SetupTitleList(list, num); PreinstallTitleDownloader.Start(); } @@ -155,6 +152,7 @@ void StartTwlTitleDownload() s_TitleDownloaderThread.Start(TwlTitleDownloaderThreadFunc, s_TitleDownloaderThreadStack); } + void StartPreinstallTitleDownload(bit64 deviceId, u8* serialNo) { PreinstallListupParam param; diff --git a/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.h b/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.h index e9bdb3e..175096c 100644 --- a/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.h +++ b/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.h @@ -26,6 +26,8 @@ void StartTwlTitleDownload(); //! @brief 新たにスレッドを立て、プリインストールタイトルのダウンロードを開始します
//! SDカードはインポート可能な状態にしておく必要があります。 +//! @param[in] deviceId デバイスID +//! @param[in] serialNo シリアルナンバー void StartPreinstallTitleDownload(bit64 deviceId, u8* serialNo);