mirror of
http://cgit.git.savannah.gnu.org/git/grub.git
synced 2026-04-28 06:33:17 +00:00
util/grub-install: Move platdir path canonicalization after files were copied to grubdir
The commit3f9eace2d(util/grub-install: Delay copying files to {grubdir,platdir} after install_device was validated) delaying copying of files caused a regression when installing without an existing directory structure. This patch ensures that the platform directory actually exists by the time the code tries to canonicalize its filename. Fixes:3f9eace2d(util/grub-install: Delay copying files to {grubdir,platdir} after install_device was validated) Signed-off-by: Mate Kukri <mate.kukri@canonical.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
@@ -1366,18 +1366,6 @@ main (int argc, char *argv[])
|
||||
relative_grubdir = xstrdup ("/");
|
||||
}
|
||||
|
||||
char *platname = grub_install_get_platform_name (platform);
|
||||
char *platdir;
|
||||
{
|
||||
char *t = grub_util_path_concat (2, grubdir,
|
||||
platname);
|
||||
platdir = grub_canonicalize_file_name (t);
|
||||
if (!platdir)
|
||||
grub_util_error (_("failed to get canonical path of `%s'"),
|
||||
t);
|
||||
free (t);
|
||||
}
|
||||
|
||||
char *prefix_drive = NULL;
|
||||
char *install_drive = NULL;
|
||||
|
||||
@@ -1408,6 +1396,18 @@ main (int argc, char *argv[])
|
||||
if (!grub_util_is_regular (envfile))
|
||||
grub_util_create_envblk_file (envfile);
|
||||
|
||||
char *platname = grub_install_get_platform_name (platform);
|
||||
char *platdir;
|
||||
{
|
||||
char *t = grub_util_path_concat (2, grubdir,
|
||||
platname);
|
||||
platdir = grub_canonicalize_file_name (t);
|
||||
if (!platdir)
|
||||
grub_util_error (_("failed to get canonical path of `%s'"),
|
||||
t);
|
||||
free (t);
|
||||
}
|
||||
|
||||
load_cfg = grub_util_path_concat (2, platdir,
|
||||
"load.cfg");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user