umount: Enable device name translation for device parameter.

This commit is contained in:
Richard Jones
2009-08-13 16:41:37 +01:00
parent 40a0f25955
commit 4556fd64a8

View File

@@ -109,15 +109,20 @@ do_umount (const char *pathordevice)
{
int r;
char *err;
char *buf;
int is_dev;
char *buf = (strncmp (pathordevice, "/dev/", 5) == 0
? strdup (pathordevice)
: sysroot_path (pathordevice));
is_dev = strncmp (pathordevice, "/dev/", 5) == 0;
buf = is_dev ? strdup (pathordevice)
: sysroot_path (pathordevice);
if (buf == NULL) {
reply_with_perror ("malloc");
return -1;
}
if (is_dev)
RESOLVE_DEVICE (buf, { free (buf); return -1; });
r = command (NULL, &err, "umount", buf, NULL);
free (buf);