diff options
Diffstat (limited to 'community/lxpanel/battery.patch')
-rw-r--r-- | community/lxpanel/battery.patch | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/community/lxpanel/battery.patch b/community/lxpanel/battery.patch new file mode 100644 index 000000000..5d701ea6d --- /dev/null +++ b/community/lxpanel/battery.patch @@ -0,0 +1,72 @@ +diff --git plugins/batt/batt_sys.c plugins/batt/batt_sys.c +index 54ff678..1eebab5 100644 +--- a/src/plugins/batt/batt_sys.c ++++ b/src/plugins/batt/batt_sys.c +@@ -35,15 +35,6 @@ + #include <stdlib.h> + #include <string.h> + +-battery* battery_new() { +- static int battery_num = 1; +- battery * b = g_new0 ( battery, 1 ); +- battery_reset(b); +- b->battery_num = battery_num; +- battery_num++; +- return b; +-} +- + void battery_reset( battery * b) { + b->type_battery = TRUE; + b->capacity_unit = "mAh"; +@@ -58,6 +49,15 @@ void battery_reset( battery * b) { + b->state = NULL; + } + ++battery* battery_new() { ++ static int battery_num = 1; ++ battery * b = g_new0 ( battery, 1 ); ++ battery_reset(b); ++ b->battery_num = battery_num; ++ battery_num++; ++ return b; ++} ++ + static gchar* parse_info_file(char *filename) + { + char *buf = NULL; +@@ -194,7 +194,7 @@ void battery_update( battery *b ) { + + /* convert energy values (in mWh) to charge values (in mAh) if needed and possible */ + if (b->last_capacity_unit != -1 && b->last_capacity == -1) { +- if (b->voltage != -1) { ++ if (b->voltage > 0) { + b->last_capacity = b->last_capacity_unit * 1000 / b->voltage; + } else { + b->last_capacity = b->last_capacity_unit; +@@ -202,7 +202,7 @@ void battery_update( battery *b ) { + } + } + if (b->design_capacity_unit != -1 && b->design_capacity == -1) { +- if (b->voltage != -1) { ++ if (b->voltage > 0) { + b->design_capacity = b->design_capacity_unit * 1000 / b->voltage; + } else { + b->design_capacity = b->design_capacity_unit; +@@ -210,7 +210,7 @@ void battery_update( battery *b ) { + } + } + if (b->remaining_energy != -1 && b->remaining_capacity == -1) { +- if (b->voltage != -1) { ++ if (b->voltage > 0) { + b->remaining_capacity = b->remaining_energy * 1000 / b->voltage; + b->present_rate = b->present_rate * 1000 / b->voltage; + } else { +@@ -220,7 +220,7 @@ void battery_update( battery *b ) { + if (b->last_capacity < MIN_CAPACITY) + b->percentage = 0; + else +- b->percentage = ((float) b->remaining_energy * 100.0) / (float) b->last_capacity_unit; ++ b->percentage = (float) b->remaining_capacity * 100 / b->last_capacity; + + if (b->percentage > 100) + b->percentage = 100; |