Fix bunch of memory problems and implement hdbias
This commit is contained in:
parent
abda0cade5
commit
64ad6157ae
3 changed files with 153 additions and 44 deletions
|
@ -88,12 +88,18 @@ main (int argc, char **argv)
|
|||
if (oldname != entryname && oldname)
|
||||
fprintf (out, "}\n\n");
|
||||
if (oldname != entryname)
|
||||
fprintf (out, "menuentry \'%s\' {\n",
|
||||
grub_legacy_escape (entryname, strlen (entryname)));
|
||||
{
|
||||
char *escaped = grub_legacy_escape (entryname, strlen (entryname));
|
||||
fprintf (out, "menuentry \'%s\' {\n", escaped);
|
||||
grub_free (escaped);
|
||||
grub_free (oldname);
|
||||
}
|
||||
}
|
||||
|
||||
if (parsed)
|
||||
fprintf (out, "%s%s", entryname ? " " : "", parsed);
|
||||
grub_free (parsed);
|
||||
parsed = NULL;
|
||||
}
|
||||
|
||||
if (entryname)
|
||||
|
@ -101,6 +107,10 @@ main (int argc, char **argv)
|
|||
|
||||
fwrite (out, 1, suffixlen, suffix);
|
||||
|
||||
grub_free (buf);
|
||||
grub_free (suffix);
|
||||
grub_free (entryname);
|
||||
|
||||
if (in != stdin)
|
||||
fclose (in);
|
||||
if (out != stdout)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue