Skip to content

Commit 2d777fe

Browse files
committed
#1494: don't watch the cart if only a section has been loaded
1 parent 7187c19 commit 2d777fe

File tree

1 file changed

+24
-10
lines changed

1 file changed

+24
-10
lines changed

src/studio/screens/console.c

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -709,11 +709,12 @@ static void onLoadDemoCommandConfirmed(Console* console, ScriptLang script)
709709
free(data);
710710
}
711711

712-
static void onCartLoaded(Console* console, const char* name)
712+
static void onCartLoaded(Console* console, const char* name, const char* section)
713713
{
714714
tic_api_reset(console->tic);
715715

716-
setCartName(console, name, tic_fs_path(console->fs, name));
716+
if(!section)
717+
setCartName(console, name, tic_fs_path(console->fs, name));
717718

718719
studioRomLoaded();
719720

@@ -774,7 +775,7 @@ static void loadByHashDone(const u8* buffer, s32 size, void* data)
774775
{
775776
tic_cart_load(cart, buffer, size);
776777
loadCartSection(console, cart, loadByHashData->section);
777-
onCartLoaded(console, loadByHashData->name);
778+
onCartLoaded(console, loadByHashData->name, loadByHashData->section);
778779
}
779780

780781
if (loadByHashData->callback)
@@ -904,7 +905,7 @@ static void onLoadCommandConfirmed(Console* console)
904905
{
905906
tic_cart_load(cart, data, size);
906907
loadCartSection(console, cart, section);
907-
onCartLoaded(console, name);
908+
onCartLoaded(console, name, section);
908909
}
909910
}
910911
else if(tic_tool_has_ext(param, PngExt) && tic_fs_exists(console->fs, param))
@@ -919,9 +920,9 @@ static void onLoadCommandConfirmed(Console* console)
919920
if(cart) SCOPE(free(cart))
920921
{
921922
loadCartSection(console, cart, section);
922-
onCartLoaded(console, param);
923+
onCartLoaded(console, param, section);
923924
}
924-
else printError(console, "\npng cart loading error");
925+
else printError(console, "\npng cart loading error");
925926
}
926927
}
927928
else
@@ -941,7 +942,7 @@ static void onLoadCommandConfirmed(Console* console)
941942
{
942943
tic_project_load(name, data, size, cart);
943944
loadCartSection(console, cart, section);
944-
onCartLoaded(console, name);
945+
onCartLoaded(console, name, section);
945946
}
946947
}
947948
else printError(console, "\nproject loading error");
@@ -982,9 +983,22 @@ static void onConfirm(bool yes, void* data)
982983
}
983984

984985
static void confirmCommand(Console* console, const char** text, s32 rows, ConfirmCallback callback)
985-
{
986-
CommandConfirmData data = {console, callback};
987-
showDialog(text, rows, onConfirm, MOVE(data));
986+
{
987+
if(console->args.cli)
988+
{
989+
for(s32 i = 0; i < rows; i++)
990+
{
991+
printError(console, text[i]);
992+
printLine(console);
993+
}
994+
995+
commandDone(console);
996+
}
997+
else
998+
{
999+
CommandConfirmData data = {console, callback};
1000+
showDialog(text, rows, onConfirm, MOVE(data));
1001+
}
9881002
}
9891003

9901004
typedef void(*LoadDemoConfirmCallback)(Console* console, ScriptLang script);

0 commit comments

Comments
 (0)