mirror of
https://github.com/wiidev/usbloadergx.git
synced 2024-11-25 20:56:53 +01:00
add subfolder create before trying to save the wad (fixes that code dump)
changes to wad install() and the screen that call it to make the installing faster
This commit is contained in:
parent
52c3661c26
commit
d17ebb37b4
File diff suppressed because one or more lines are too long
@ -4,6 +4,10 @@
|
||||
*
|
||||
* TitleBrowser.cpp *giantpune*
|
||||
***************************************************************************/
|
||||
|
||||
#include <dirent.h>
|
||||
|
||||
|
||||
#include "language/gettext.h"
|
||||
#include "libwiigui/gui.h"
|
||||
#include "libwiigui/gui_customoptionbrowser.h"
|
||||
@ -12,14 +16,13 @@
|
||||
#include "network/networkops.h"
|
||||
#include "network/http.h"
|
||||
#include "filelist.h"
|
||||
#include "listfiles.h"
|
||||
#include "settings/cfg.h"
|
||||
#include "sys.h"
|
||||
#include "menu.h"
|
||||
#include "audio.h"
|
||||
#include "wad/wad.h"
|
||||
|
||||
#include "xml/xml.h"
|
||||
|
||||
#include "../wad/title.h"
|
||||
|
||||
/*** Extern functions ***/
|
||||
@ -388,7 +391,16 @@ int TitleBrowser(u32 type) {
|
||||
char filepath[100];
|
||||
u32 read = 0;
|
||||
|
||||
//make sure there is a folder for this to be saved in
|
||||
struct stat st;
|
||||
snprintf(filepath, sizeof(filepath), "%s/wad/", bootDevice);
|
||||
if (stat(filepath, &st) != 0) {
|
||||
if (subfoldercreate(filepath) != 1) {
|
||||
WindowPrompt(tr("Error !"),tr("Can't create directory"),tr("OK"));
|
||||
}
|
||||
}
|
||||
snprintf(filepath, sizeof(filepath), "%s/wad/tmp.tmp", bootDevice);
|
||||
|
||||
FILE *file = fopen(filepath, "wb");
|
||||
|
||||
if (infilesize < MBSIZE)
|
||||
@ -464,7 +476,26 @@ int TitleBrowser(u32 type) {
|
||||
if (lSize==infilesize) {
|
||||
int pick = WindowPrompt(tr(" Wad Saved as:"), tmptxt, tr("Install"),tr("Uninstall"),tr("Cancel"));
|
||||
//install or uninstall it
|
||||
if (pick==1)Wad_Install(file);
|
||||
if (pick==1)
|
||||
{
|
||||
|
||||
HaltGui();
|
||||
w.Remove(&titleTxt);
|
||||
w.Remove(&cancelBtn);
|
||||
w.Remove(&wifiBtn);
|
||||
w.Remove(&optionBrowser3);
|
||||
ResumeGui();
|
||||
|
||||
Wad_Install(file);
|
||||
|
||||
HaltGui();
|
||||
w.Append(&titleTxt);
|
||||
w.Append(&cancelBtn);
|
||||
w.Append(&wifiBtn);
|
||||
w.Append(&optionBrowser3);
|
||||
ResumeGui();
|
||||
|
||||
}
|
||||
if (pick==2)Wad_Uninstall(file);
|
||||
}
|
||||
//close that beast, we're done with it
|
||||
|
@ -338,11 +338,12 @@ s32 Wad_Install(FILE *fp)
|
||||
ret = cfd;
|
||||
goto err;
|
||||
}
|
||||
|
||||
snprintf(imgPath, sizeof(imgPath), "%s%d...",tr(">> Installing content #"),content->cid);
|
||||
msg4Txt.SetText(imgPath);
|
||||
// Install content data
|
||||
while (idx < len) {
|
||||
|
||||
VIDEO_WaitVSync ();
|
||||
//VIDEO_WaitVSync ();
|
||||
|
||||
u32 size;
|
||||
|
||||
@ -364,9 +365,10 @@ s32 Wad_Install(FILE *fp)
|
||||
// Increase variables
|
||||
idx += size;
|
||||
offset += size;
|
||||
snprintf(imgPath, sizeof(imgPath), "%s%d (%d)...",tr(">> Installing content #"),content->cid,idx);
|
||||
|
||||
msg4Txt.SetText(imgPath);
|
||||
//snprintf(imgPath, sizeof(imgPath), "%s%d (%d)...",tr(">> Installing content #"),content->cid,idx);
|
||||
|
||||
//msg4Txt.SetText(imgPath);
|
||||
|
||||
prTxt.SetTextf("%i%%", 100*(cnt*len+idx)/(tmd_data->num_contents*len));
|
||||
if ((Settings.wsprompt == yes) && (CFG.widescreen)) {
|
||||
|
Loading…
Reference in New Issue
Block a user