ensure operation is using double
[psensor.git] / src / lib / cpu.c
index 8f37723..91d0bf5 100644 (file)
@@ -62,9 +62,9 @@ cpu_psensor_list_add(struct psensor **sensors, int measures_len)
 static double get_usage()
 {
        glibtop_cpu cpu;
-       unsigned long int used = 0;
+       unsigned long int used;
        unsigned long int dt;
-       double cpu_rate = UNKNOWN_DBL_VALUE;
+       double cpu_rate;
 
        glibtop_get_cpu(&cpu);
 
@@ -73,7 +73,9 @@ static double get_usage()
        dt = cpu.total - last_total;
 
        if (dt)
-               cpu_rate = 100 * (used - last_used) / dt;
+               cpu_rate = 100.0 * (used - last_used) / dt;
+       else
+               cpu_rate = UNKNOWN_DBL_VALUE;
 
        last_used = used;
        last_total = cpu.total;
@@ -88,16 +90,15 @@ void cpu_usage_sensor_update(struct psensor *s)
 
 void cpu_psensor_list_update(struct psensor **sensors)
 {
-       struct psensor **ss, *s;
+       struct psensor *s;
 
-       ss = sensors;
-       while (*ss) {
-               s = *ss;
+       while (*sensors) {
+               s = *sensors;
 
                if (s->type & SENSOR_TYPE_GTOP
                    && s->type & SENSOR_TYPE_CPU_USAGE)
                        cpu_usage_sensor_update(s);
 
-               ss++;
+               sensors++;
        }
 }