| 683 | } |
| 684 | |
| 685 | static bool tryUnlockGame(const psf::registry &psf) { |
| 686 | auto contentId = psf::get_string(psf, "CONTENT_ID"); |
| 687 | |
| 688 | if (contentId.empty()) { |
| 689 | return true; |
| 690 | } |
| 691 | |
| 692 | const auto licenseDir = fmt::format( |
| 693 | "%shome/%s/exdata/", rpcs3::utils::get_hdd0_dir(), Emu.GetUsr()); |
| 694 | |
| 695 | const auto licenseFile = fmt::format("%s%s", licenseDir, contentId); |
| 696 | if (std::filesystem::is_regular_file(licenseFile + ".rap")) { |
| 697 | return true; |
| 698 | } |
| 699 | |
| 700 | if (std::filesystem::is_regular_file(licenseFile + ".edat")) { |
| 701 | return true; |
| 702 | } |
| 703 | |
| 704 | return false; |
| 705 | } |
| 706 | |
| 707 | static void collectGamePaths(std::vector<std::string> &paths, |
| 708 | const std::string &rootDir) { |
no test coverage detected