@ -11,16 +11,8 @@
# include "core/loader/nca.h"
# include "core/loader/nca.h"
namespace Loader {
namespace Loader {
namespace {
AppLoader_NAX : : AppLoader_NAX ( FileSys : : VirtualFile file )
FileType IdentifyTypeImpl ( const FileSys : : NAX & nax ) {
: AppLoader ( file ) , nax ( std : : make_unique < FileSys : : NAX > ( file ) ) ,
nca_loader ( std : : make_unique < AppLoader_NCA > ( nax - > GetDecrypted ( ) ) ) { }
AppLoader_NAX : : ~ AppLoader_NAX ( ) = default ;
FileType AppLoader_NAX : : IdentifyType ( const FileSys : : VirtualFile & file ) {
FileSys : : NAX nax ( file ) ;
if ( nax . GetStatus ( ) ! = ResultStatus : : Success ) {
if ( nax . GetStatus ( ) ! = ResultStatus : : Success ) {
return FileType : : Error ;
return FileType : : Error ;
}
}
@ -32,6 +24,22 @@ FileType AppLoader_NAX::IdentifyType(const FileSys::VirtualFile& file) {
return FileType : : NAX ;
return FileType : : NAX ;
}
}
} // Anonymous namespace
AppLoader_NAX : : AppLoader_NAX ( FileSys : : VirtualFile file )
: AppLoader ( file ) , nax ( std : : make_unique < FileSys : : NAX > ( file ) ) ,
nca_loader ( std : : make_unique < AppLoader_NCA > ( nax - > GetDecrypted ( ) ) ) { }
AppLoader_NAX : : ~ AppLoader_NAX ( ) = default ;
FileType AppLoader_NAX : : IdentifyType ( const FileSys : : VirtualFile & file ) {
const FileSys : : NAX nax ( file ) ;
return IdentifyTypeImpl ( nax ) ;
}
FileType AppLoader_NAX : : GetFileType ( ) {
return IdentifyTypeImpl ( * nax ) ;
}
ResultStatus AppLoader_NAX : : Load ( Kernel : : SharedPtr < Kernel : : Process > & process ) {
ResultStatus AppLoader_NAX : : Load ( Kernel : : SharedPtr < Kernel : : Process > & process ) {
if ( is_loaded ) {
if ( is_loaded ) {