From f87057a08104fc7dcc0e232a5bf4e51561810ced Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javier=20Jard=C3=B3n?= Date: Sun, 2 Oct 2011 18:29:24 +0100 Subject: Add a workaround to fix the case when we get a empty bay as a real battery --- src/indicator-power.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/indicator-power.c b/src/indicator-power.c index 275e871..28cc023 100644 --- a/src/indicator-power.c +++ b/src/indicator-power.c @@ -427,10 +427,15 @@ menu_add_device (GtkMenu *menu, &state, &time); - if (kind == UP_DEVICE_KIND_LINE_POWER) + g_debug ("%s: got data from object %s", G_STRFUNC, object_path); + + /* Try to fix the case when we get a empty battery bay as a real battery */ + if (state == UP_DEVICE_STATE_UNKNOWN && + percentage == 0) return; - g_debug ("%s: got data from object %s", G_STRFUNC, object_path); + if (kind == UP_DEVICE_KIND_LINE_POWER) + return; /* Process the data */ device_gicons = get_device_icon (kind, state, device_icon); @@ -582,6 +587,11 @@ get_primary_device (GVariant *devices) g_debug ("%s: got data from object %s", G_STRFUNC, object_path); + /* Try to fix the case when we get a empty battery bay as a real battery */ + if (state == UP_DEVICE_STATE_UNKNOWN && + percentage == 0) + continue; + /* not battery */ if (kind != UP_DEVICE_KIND_BATTERY) continue; -- cgit v1.2.3