From 62f883c7d38e75d0669c162529062a1e81d00da2 Mon Sep 17 00:00:00 2001 From: David Zeuthen Date: Mon, 17 Aug 2009 13:02:29 -0400 Subject: [PATCH] =?utf8?q?Bug=2023235=20=E2=80=93=20Cannot=20mount=20disc?= =?utf8?q?=20with=20/=20(slash)=20in=20label?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- src/devkit-disks-device.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/devkit-disks-device.c b/src/devkit-disks-device.c index 407305a..06898c0 100644 --- a/src/devkit-disks-device.c +++ b/src/devkit-disks-device.c @@ -4671,7 +4671,18 @@ devkit_disks_device_filesystem_mount_authorized_cb (DevkitDisksDaemon *daemo * to get better names (/media/disk is kinda lame). */ if (device->priv->id_label != NULL && strlen (device->priv->id_label) > 0 ) { - mount_point = g_build_filename ("/media", device->priv->id_label, NULL); + GString *s; + + s = g_string_new ("/media/"); + for (n = 0; device->priv->id_label[n] != '\0'; n++) { + gint c = device->priv->id_label[n]; + if (c == '/') + g_string_append_c (s, '_'); + else + g_string_append_c (s, c); + } + + mount_point = g_string_free (s, FALSE); } else if (device->priv->id_uuid != NULL && strlen (device->priv->id_uuid) > 0) { mount_point = g_build_filename ("/media", device->priv->id_uuid, NULL); } else { -- 2.7.4