summaryrefslogtreecommitdiffstats
path: root/main/udisks/no-floppy.patch
blob: 3d01dac7ac48280d399844808849ea83f0c67c14 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
From ca93d4e2d9e7f483b2fde1725da086e2cca44164 Mon Sep 17 00:00:00 2001
From: Martin Pitt <martin.pitt@ubuntu.com>
Date: Wed, 02 Jun 2010 13:56:07 +0000
Subject: Fix long hangs on probing nonexistant floppy drives

A lot of modern machines do not have a floppy drive any more, but still have a
floppy controller somewhere (or at least the BIOS pretends to). Trying to
open(/dev/fd0) on these machines causes long hangs, which lead to long desktop
startup times.

To fix this, avoid probing floppies for media in update_info().

https://launchpad.net/bugs/539515
---
diff --git a/src/device.c b/src/device.c
index 763385c..0e87f1d 100644
--- a/src/device.c
+++ b/src/device.c
@@ -4471,7 +4471,8 @@ update_info (Device *device)
     {
       media_available = FALSE;
 
-      if (!g_udev_device_get_property_as_boolean (device->priv->d, "ID_CDROM"))
+      if (!g_udev_device_get_property_as_boolean (device->priv->d, "ID_CDROM") &&
+          !g_udev_device_get_property_as_boolean (device->priv->d, "ID_DRIVE_FLOPPY"))
         {
           int fd;
           fd = open (device->priv->device_file, O_RDONLY);
--
cgit v0.8.3-6-g21f6