mirror of
https://github.com/wiiu-env/launchiine.git
synced 2024-11-22 01:39:18 +01:00
Add support for exiting the application while loading title infos
This commit is contained in:
parent
933a97f2f3
commit
e96e51ad46
@ -82,7 +82,7 @@ int32_t GameList::readGameList() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (auto title_candidate : titles) {
|
for (auto title_candidate : titles) {
|
||||||
if((title_candidate.titleId & 0xFFFFFFFF00000000L) == 0x0005000000000000L) {
|
if(true || (title_candidate.titleId & 0xFFFFFFFF00000000L) == 0x0005000000000000L) {
|
||||||
gameInfo* newGameInfo = new gameInfo;
|
gameInfo* newGameInfo = new gameInfo;
|
||||||
newGameInfo->titleId = title_candidate.titleId;
|
newGameInfo->titleId = title_candidate.titleId;
|
||||||
newGameInfo->gamePath = title_candidate.path;
|
newGameInfo->gamePath = title_candidate.path;
|
||||||
@ -101,6 +101,12 @@ int32_t GameList::readGameList() {
|
|||||||
for (uint32_t i = 0; i < fullGameList.size(); ++i) {
|
for (uint32_t i = 0; i < fullGameList.size(); ++i) {
|
||||||
gameInfo *header = fullGameList[i];
|
gameInfo *header = fullGameList[i];
|
||||||
|
|
||||||
|
DCFlushRange(&stopAsyncLoading, sizeof(stopAsyncLoading));
|
||||||
|
if(stopAsyncLoading) {
|
||||||
|
DEBUG_FUNCTION_LINE("Stop async title loading\n");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
DEBUG_FUNCTION_LINE("Load extra infos of %016llX\n",header->titleId);
|
DEBUG_FUNCTION_LINE("Load extra infos of %016llX\n",header->titleId);
|
||||||
ACPMetaXml* meta = (ACPMetaXml*)calloc(1, 0x4000); //TODO fix wut
|
ACPMetaXml* meta = (ACPMetaXml*)calloc(1, 0x4000); //TODO fix wut
|
||||||
if(meta) {
|
if(meta) {
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
#include <mutex>
|
#include <mutex>
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <coreinit/mcp.h>
|
#include <coreinit/mcp.h>
|
||||||
|
#include <coreinit/cache.h>
|
||||||
#include <gui/sigslot.h>
|
#include <gui/sigslot.h>
|
||||||
#include <gui/GuiImageData.h>
|
#include <gui/GuiImageData.h>
|
||||||
|
|
||||||
@ -19,6 +20,8 @@ class GameList {
|
|||||||
public:
|
public:
|
||||||
GameList() : selectedGame(0) { };
|
GameList() : selectedGame(0) { };
|
||||||
~GameList() {
|
~GameList() {
|
||||||
|
stopAsyncLoading = true;
|
||||||
|
DCFlushRange(&stopAsyncLoading, sizeof(stopAsyncLoading));
|
||||||
clear();
|
clear();
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -134,6 +137,8 @@ protected:
|
|||||||
std::vector<gameInfo *> fullGameList;
|
std::vector<gameInfo *> fullGameList;
|
||||||
|
|
||||||
std::recursive_mutex _lock;
|
std::recursive_mutex _lock;
|
||||||
|
|
||||||
|
bool stopAsyncLoading = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user