Remove several trivially-unnecessary uses of nested functions.
* grub-core/commands/i386/pc/sendkey.c (grub_cmd_sendkey: find_key_code, find_ascii_code): Make static instead of nested. * grub-core/commands/legacycfg.c (legacy_file: getline): Likewise. Rename to ... (legacy_file_getline): ... this. * grub-core/commands/loadenv.c (grub_cmd_load_env: set_var): Likewise. * grub-core/kern/corecmd.c (grub_core_cmd_set: print_env): Likewise. * grub-core/kern/fs.c (grub_fs_probe: dummy_func): Likewise. Rename to ... (probe_dummy_iter): ... this. * grub-core/kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate: check_signature): Likewise. * grub-core/kern/parser.c (grub_parser_split_cmdline: check_varstate): Likewise. Mark inline. * grub-core/lib/arg.c (find_short: fnd_short): Likewise. Pass an additional parameter. (find_long: fnd_long): Likewise. Pass two additional parameters. * grub-core/lib/crc.c (init_crc32c_table: reflect): Likewise. * grub-core/lib/crc64.c (init_crc64_table: reflect): Likewise. * grub-core/lib/ieee1275/cmos.c (grub_cmos_find_port: hook): Likewise. Rename to ... (grub_cmos_find_port_iter): ... this. * grub-core/lib/ieee1275/datetime.c (find_rtc: hook): Likewise. Rename to ... (find_rtc_iter): ... this. * grub-core/normal/menu_entry.c (run): Fold nested editor_getsource function directly into the function body, since it is only called once.
This commit is contained in:
parent
33a68ac643
commit
5c67ea6cd9
14 changed files with 273 additions and 235 deletions
|
@ -1205,32 +1205,6 @@ run (struct screen *screen)
|
|||
grub_menu_t menu = NULL;
|
||||
char *dummy[1] = { NULL };
|
||||
|
||||
auto char * editor_getsource (void);
|
||||
char * editor_getsource (void)
|
||||
{
|
||||
int i;
|
||||
grub_size_t size = 0, tot_size = 0;
|
||||
char *source;
|
||||
|
||||
for (i = 0; i < screen->num_lines; i++)
|
||||
tot_size += grub_get_num_of_utf8_bytes (screen->lines[i].buf,
|
||||
screen->lines[i].len) + 1;
|
||||
|
||||
source = grub_malloc (tot_size + 1);
|
||||
if (! source)
|
||||
return NULL;
|
||||
|
||||
for (i = 0; i < screen->num_lines; i++)
|
||||
{
|
||||
size += grub_ucs4_to_utf8 (screen->lines[i].buf, screen->lines[i].len,
|
||||
(grub_uint8_t *) source + size,
|
||||
tot_size - size);
|
||||
source[size++] = '\n';
|
||||
}
|
||||
source[size] = '\0';
|
||||
return source;
|
||||
}
|
||||
|
||||
grub_cls ();
|
||||
grub_printf (" ");
|
||||
grub_printf_ (N_("Booting a command list"));
|
||||
|
@ -1248,9 +1222,27 @@ run (struct screen *screen)
|
|||
}
|
||||
|
||||
/* Execute the script, line for line. */
|
||||
script = editor_getsource ();
|
||||
if (! script)
|
||||
return 0;
|
||||
{
|
||||
int i;
|
||||
grub_size_t size = 0, tot_size = 0;
|
||||
|
||||
for (i = 0; i < screen->num_lines; i++)
|
||||
tot_size += grub_get_num_of_utf8_bytes (screen->lines[i].buf,
|
||||
screen->lines[i].len) + 1;
|
||||
|
||||
script = grub_malloc (tot_size + 1);
|
||||
if (! script)
|
||||
return 0;
|
||||
|
||||
for (i = 0; i < screen->num_lines; i++)
|
||||
{
|
||||
size += grub_ucs4_to_utf8 (screen->lines[i].buf, screen->lines[i].len,
|
||||
(grub_uint8_t *) script + size,
|
||||
tot_size - size);
|
||||
script[size++] = '\n';
|
||||
}
|
||||
script[size] = '\0';
|
||||
}
|
||||
grub_script_execute_sourcecode (script, 0, dummy);
|
||||
grub_free (script);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue