mirror of
https://github.com/Atmosphere-NX/Atmosphere
synced 2024-12-22 20:31:14 +00:00
Fix small issues in the stage2 loader (#78)
* stage2 loader: Fix loadlist parsing breaking out of the loop too early * stage2 loader: Use bct0 from the loader context
This commit is contained in:
parent
54a1529ef4
commit
0807aaea2b
1 changed files with 9 additions and 7 deletions
|
@ -54,7 +54,7 @@ void load_list_entry(const char *key) {
|
|||
|
||||
printk("Loading %s\n", key);
|
||||
|
||||
if (ini_parse_string(g_bct0, loadlist_entry_ini_handler, &load_file_ctx) < 0) {
|
||||
if (ini_parse_string(get_loader_ctx()->bct0, loadlist_entry_ini_handler, &load_file_ctx) < 0) {
|
||||
printk("Error: Failed to parse BCT.ini!\n");
|
||||
generic_panic();
|
||||
}
|
||||
|
@ -110,20 +110,22 @@ void parse_loadlist(const char *ll) {
|
|||
/* Load the entry. */
|
||||
load_list_entry(entry);
|
||||
/* Skip to the next delimiter. */
|
||||
for (; *p == ' ' || *p == '\t'; p++) { }
|
||||
if (*p == '\x00') {
|
||||
break;
|
||||
} else if (*p != '|') {
|
||||
for (; *p == ' ' || *p == '\t' || *p == '\x00'; p++) { }
|
||||
if (*p != '|') {
|
||||
printk("Error: Load list is malformed!\n");
|
||||
generic_panic();
|
||||
} else {
|
||||
/* Skip to the next entry. */
|
||||
for (; *p == ' ' || *p == '\t'; p++) { }
|
||||
for (; *p == ' ' || *p == '\t' || *p == '|'; p++) { }
|
||||
entry = p;
|
||||
}
|
||||
}
|
||||
|
||||
p++;
|
||||
if (*p == '\x00') {
|
||||
/* We're at the end of the line, load the last entry */
|
||||
load_list_entry(entry);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue