diff options
| -rw-r--r-- | src/core/hle/service/filesystem/filesystem.cpp | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/src/core/hle/service/filesystem/filesystem.cpp b/src/core/hle/service/filesystem/filesystem.cpp index f59fa7fb1..ac465d5a9 100644 --- a/src/core/hle/service/filesystem/filesystem.cpp +++ b/src/core/hle/service/filesystem/filesystem.cpp | |||
| @@ -383,7 +383,12 @@ Result FileSystemController::CreateSaveData(FileSys::VirtualDir* out_save_data, | |||
| 383 | return FileSys::ERROR_ENTITY_NOT_FOUND; | 383 | return FileSys::ERROR_ENTITY_NOT_FOUND; |
| 384 | } | 384 | } |
| 385 | 385 | ||
| 386 | *out_save_data = save_data_factory->Create(space, save_struct); | 386 | auto save_data = save_data_factory->Create(space, save_struct); |
| 387 | if (save_data == nullptr) { | ||
| 388 | return FileSys::ERROR_ENTITY_NOT_FOUND; | ||
| 389 | } | ||
| 390 | |||
| 391 | *out_save_data = save_data; | ||
| 387 | return ResultSuccess; | 392 | return ResultSuccess; |
| 388 | } | 393 | } |
| 389 | 394 | ||
| @@ -397,7 +402,12 @@ Result FileSystemController::OpenSaveData(FileSys::VirtualDir* out_save_data, | |||
| 397 | return FileSys::ERROR_ENTITY_NOT_FOUND; | 402 | return FileSys::ERROR_ENTITY_NOT_FOUND; |
| 398 | } | 403 | } |
| 399 | 404 | ||
| 400 | *out_save_data = save_data_factory->Open(space, attribute); | 405 | auto save_data = save_data_factory->Open(space, attribute); |
| 406 | if (save_data == nullptr) { | ||
| 407 | return FileSys::ERROR_ENTITY_NOT_FOUND; | ||
| 408 | } | ||
| 409 | |||
| 410 | *out_save_data = save_data; | ||
| 401 | return ResultSuccess; | 411 | return ResultSuccess; |
| 402 | } | 412 | } |
| 403 | 413 | ||
| @@ -409,7 +419,12 @@ Result FileSystemController::OpenSaveDataSpace(FileSys::VirtualDir* out_save_dat | |||
| 409 | return FileSys::ERROR_ENTITY_NOT_FOUND; | 419 | return FileSys::ERROR_ENTITY_NOT_FOUND; |
| 410 | } | 420 | } |
| 411 | 421 | ||
| 412 | *out_save_data_space = save_data_factory->GetSaveDataSpaceDirectory(space); | 422 | auto save_data_space = save_data_factory->GetSaveDataSpaceDirectory(space); |
| 423 | if (save_data_space == nullptr) { | ||
| 424 | return FileSys::ERROR_ENTITY_NOT_FOUND; | ||
| 425 | } | ||
| 426 | |||
| 427 | *out_save_data_space = save_data_space; | ||
| 413 | return ResultSuccess; | 428 | return ResultSuccess; |
| 414 | } | 429 | } |
| 415 | 430 | ||
| @@ -420,7 +435,12 @@ Result FileSystemController::OpenSDMC(FileSys::VirtualDir* out_sdmc) const { | |||
| 420 | return FileSys::ERROR_SD_CARD_NOT_FOUND; | 435 | return FileSys::ERROR_SD_CARD_NOT_FOUND; |
| 421 | } | 436 | } |
| 422 | 437 | ||
| 423 | *out_sdmc = sdmc_factory->Open(); | 438 | auto sdmc = sdmc_factory->Open(); |
| 439 | if (sdmc == nullptr) { | ||
| 440 | return FileSys::ERROR_SD_CARD_NOT_FOUND; | ||
| 441 | } | ||
| 442 | |||
| 443 | *out_sdmc = sdmc; | ||
| 424 | return ResultSuccess; | 444 | return ResultSuccess; |
| 425 | } | 445 | } |
| 426 | 446 | ||