Need to convert '/' back to '\' when creating a path. Ideally, this

would be filesystem type dependent, but that's difficult to accomplish
and it's unclear how the UEFI firmware will cope. Be conservative and
make boot loaders cope instead.

Sponsored by: Netflix
This commit is contained in:
Warner Losh 2018-01-05 07:09:29 +00:00
parent 167b7a41ff
commit 670a4056e2
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=327575

View File

@ -527,12 +527,17 @@ find_geom_efimedia(struct gmesh *mesh, const char *dev)
static int static int
build_dp(const char *efimedia, const char *relpath, efidp *dp) build_dp(const char *efimedia, const char *relpath, efidp *dp)
{ {
char *fp, *dptxt = NULL; char *fp, *dptxt = NULL, *cp, *rp;
int rv = 0; int rv = 0;
efidp out = NULL; efidp out = NULL;
size_t len; size_t len;
fp = path_to_file_dp(relpath); rp = strdup(relpath);
for (cp = rp; *cp; cp++)
if (*cp == '/')
*cp = '\\';
fp = path_to_file_dp(rp);
free(rp);
if (fp == NULL) { if (fp == NULL) {
rv = ENOMEM; rv = ENOMEM;
goto errout; goto errout;