Fixed 1.0.0 booting

This commit is contained in:
Adubbz 2019-08-10 17:01:24 +10:00
parent 85e36522e4
commit da0a293f38

View File

@ -347,21 +347,27 @@ namespace sts::ncm::impl {
auto content_storage = entry->content_storage; auto content_storage = entry->content_storage;
if (!content_storage) { if (!content_storage) {
switch (storage_id) { /* 1.0.0 activates content storages as soon as they are opened. */
case StorageId::GameCard: if (GetRuntimeFirmwareVersion() == FirmwareVersion_100) {
return ResultNcmGameCardContentStorageNotActive; R_TRY(ActivateContentStorage(storage_id));
content_storage = entry->content_storage;
} else {
switch (storage_id) {
case StorageId::GameCard:
return ResultNcmGameCardContentStorageNotActive;
case StorageId::NandSystem: case StorageId::NandSystem:
return ResultNcmNandSystemContentStorageNotActive; return ResultNcmNandSystemContentStorageNotActive;
case StorageId::NandUser: case StorageId::NandUser:
return ResultNcmNandUserContentStorageNotActive; return ResultNcmNandUserContentStorageNotActive;
case StorageId::SdCard: case StorageId::SdCard:
return ResultNcmSdCardContentStorageNotActive; return ResultNcmSdCardContentStorageNotActive;
default: default:
return ResultNcmUnknownContentStorageNotActive; return ResultNcmUnknownContentStorageNotActive;
}
} }
} }
@ -563,21 +569,27 @@ namespace sts::ncm::impl {
std::shared_ptr<IContentMetaDatabase> content_meta_db = entry->content_meta_database; std::shared_ptr<IContentMetaDatabase> content_meta_db = entry->content_meta_database;
if (!content_meta_db) { if (!content_meta_db) {
switch (storage_id) { /* 1.0.0 activates content meta dbs as soon as they are opened. */
case StorageId::GameCard: if (GetRuntimeFirmwareVersion() == FirmwareVersion_100) {
return ResultNcmGameCardContentMetaDatabaseNotActive; R_TRY(ActivateContentMetaDatabase(storage_id));
content_meta_db = entry->content_meta_database;
} else {
switch (storage_id) {
case StorageId::GameCard:
return ResultNcmGameCardContentMetaDatabaseNotActive;
case StorageId::NandSystem: case StorageId::NandSystem:
return ResultNcmNandSystemContentMetaDatabaseNotActive; return ResultNcmNandSystemContentMetaDatabaseNotActive;
case StorageId::NandUser: case StorageId::NandUser:
return ResultNcmNandUserContentMetaDatabaseNotActive; return ResultNcmNandUserContentMetaDatabaseNotActive;
case StorageId::SdCard: case StorageId::SdCard:
return ResultNcmSdCardContentMetaDatabaseNotActive; return ResultNcmSdCardContentMetaDatabaseNotActive;
default: default:
return ResultNcmUnknownContentMetaDatabaseNotActive; return ResultNcmUnknownContentMetaDatabaseNotActive;
}
} }
} }