mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2025-01-17 23:34:07 +00:00
73 lines
2.2 KiB
Diff
73 lines
2.2 KiB
Diff
|
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;
|