From 017f6ed28215b9a7ddff34c2b8b42d002a100213 Mon Sep 17 00:00:00 2001 From: Tor Lillqvist Date: Sun, 23 Jan 2005 00:06:24 +0000 Subject: Don't call GetVolumeInformation() for network drives. They might be 2005-01-23 Tor Lillqvist * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_volume_get_display_name): Don't call GetVolumeInformation() for network drives. They might be disconnected, and calling GetVolumeInformation() will then cause long delays. (#164448) It seems to be very hard to reliably find out whether a network drive is connected or not, so it's easier to just not try getting the volume name for them. See the bug report for discussion. --- gtk/gtkfilesystemwin32.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gtk/gtkfilesystemwin32.c') diff --git a/gtk/gtkfilesystemwin32.c b/gtk/gtkfilesystemwin32.c index ff366aa0de..4555299d91 100644 --- a/gtk/gtkfilesystemwin32.c +++ b/gtk/gtkfilesystemwin32.c @@ -606,7 +606,10 @@ gtk_file_system_win32_volume_get_display_name (GtkFileSystem *file_system, g_return_val_if_fail (volume->drive != NULL, NULL); - if ((filename_is_drive_root (volume->drive) && volume->drive[0] >= 'C') || + if (filename_is_drive_root (volume->drive) && + volume->drive_type == DRIVE_REMOTE) + real_display_name = g_strdup (volume->drive); + else if ((filename_is_drive_root (volume->drive) && volume->drive[0] >= 'C') || volume->drive_type != DRIVE_REMOVABLE) { gunichar2 *wdrive = g_utf8_to_utf16 (volume->drive, -1, NULL, NULL, NULL); -- cgit v1.2.1