Magellan Linux

Annotation of /trunk/hal/patches/hal-0.5.10-fix-endless-loop-in-storage-addon.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 597 - (hide annotations) (download)
Mon May 19 19:05:19 2008 UTC (16 years, 1 month ago) by niro
File size: 1315 byte(s)
-gentoo patches

1 niro 597 From e0b5cb8dce7e3a1c2203c5e7a83d0391a46845ef Mon Sep 17 00:00:00 2001
2     From: Danny Kukawka <danny.kukawka@web.de>
3     Date: Thu, 6 Dec 2007 20:41:55 +0100
4     Subject: [PATCH] fix endless loop in storage-addon
5    
6     This fixes a endless loop if you attach e.g. a USB floppy device which
7     already contains a floppy media (because of the initial media_status). The
8     result is that the media in the device get never detected until the state
9     change again (remove/readd the media to the device).
10    
11     IMO this could theoretically also happen on other devices which already
12     contains a media when attached.
13     ---
14     hald/linux/addons/addon-storage.c | 8 ++++++++
15     1 files changed, 8 insertions(+), 0 deletions(-)
16    
17     diff --git a/hald/linux/addons/addon-storage.c b/hald/linux/addons/addon-storage.c
18     index a58b8aa..42385fc 100644
19     --- a/hald/linux/addons/addon-storage.c
20     +++ b/hald/linux/addons/addon-storage.c
21     @@ -473,6 +473,14 @@ poll_for_media (gpointer user_data)
22     }
23     }
24    
25     + /* set correct state on startup, this avoid endless loops if there was a media in the device on startup */
26     + if (media_status == MEDIA_STATUS_UNKNOWN) {
27     + if (got_media)
28     + media_status = MEDIA_STATUS_NO_MEDIA;
29     + else
30     + media_status = MEDIA_STATUS_GOT_MEDIA;
31     + }
32     +
33     switch (media_status) {
34     case MEDIA_STATUS_GOT_MEDIA:
35     if (!got_media) {
36     --
37     1.5.3.7
38