okra pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=d843f58671e7cc94e3dfe02f316af1b9f7abe05b

commit d843f58671e7cc94e3dfe02f316af1b9f7abe05b
Author: Stephen 'Okra' Houston <[email protected]>
Date:   Mon Jan 9 09:39:58 2017 -0600

    Enlightenment: Fix coverity issues related to new sysinfo gadget
    
    This fixes CID1368352 CID1368351 CID1368350 CID1368349 CID1368348 
CID1368347 CID1368346 CID1368344 CID1368343
---
 src/modules/sysinfo/batman/batman.c            | 5 +++--
 src/modules/sysinfo/cpuclock/cpuclock.c        | 3 ++-
 src/modules/sysinfo/cpumonitor/cpumonitor.c    | 3 ++-
 src/modules/sysinfo/memusage/memusage.c        | 3 ++-
 src/modules/sysinfo/memusage/memusage_proc.c   | 6 ++++--
 src/modules/sysinfo/netstatus/netstatus.c      | 3 ++-
 src/modules/sysinfo/thermal/thermal_fallback.c | 2 +-
 7 files changed, 16 insertions(+), 9 deletions(-)

diff --git a/src/modules/sysinfo/batman/batman.c 
b/src/modules/sysinfo/batman/batman.c
index dbd5be1..56c83e4 100644
--- a/src/modules/sysinfo/batman/batman.c
+++ b/src/modules/sysinfo/batman/batman.c
@@ -74,8 +74,9 @@ _batman_update(Instance *inst, int full, int time_left, int 
time_full, Eina_Bool
    static double debounce_time = 0.0;
 
    if (!inst) return;
-   if (inst->cfg->esm != E_SYSINFO_MODULE_BATMAN && inst->cfg->esm != 
E_SYSINFO_MODULE_SYSINFO) return;
    if (!inst->cfg) return;
+   if (inst->cfg->esm != E_SYSINFO_MODULE_BATMAN && inst->cfg->esm != 
E_SYSINFO_MODULE_SYSINFO) return;
+
    if (have_power != inst->cfg->batman.have_power)
      {
         if (have_power && (full < 100))
@@ -322,7 +323,7 @@ _batman_warning_popup_destroy(Instance *inst)
         ecore_timer_del(inst->cfg->batman.alert_timer);
         inst->cfg->batman.alert_timer = NULL;
      }
-   if ((!inst) || (!inst->warning)) return;
+   if (!inst->warning) return;
    elm_ctxpopup_dismiss(inst->warning);
 }
 
diff --git a/src/modules/sysinfo/cpuclock/cpuclock.c 
b/src/modules/sysinfo/cpuclock/cpuclock.c
index f2420bd..359f1a4 100644
--- a/src/modules/sysinfo/cpuclock/cpuclock.c
+++ b/src/modules/sysinfo/cpuclock/cpuclock.c
@@ -709,8 +709,9 @@ _cpuclock_cb_frequency_check_notify(void *data,
    Thread_Config *thc = data;
    Instance *inst = thc->inst;
 
-   if (inst->cfg->esm != E_SYSINFO_MODULE_CPUCLOCK && inst->cfg->esm != 
E_SYSINFO_MODULE_SYSINFO) return;
    if (!inst->cfg) return;
+   if (inst->cfg->esm != E_SYSINFO_MODULE_CPUCLOCK && inst->cfg->esm != 
E_SYSINFO_MODULE_SYSINFO) return;
+
    if ((inst->cfg->cpuclock.status) && (status) &&
        (
 #ifdef __OpenBSD__
diff --git a/src/modules/sysinfo/cpumonitor/cpumonitor.c 
b/src/modules/sysinfo/cpumonitor/cpumonitor.c
index debaa47..a86ea2c 100644
--- a/src/modules/sysinfo/cpumonitor/cpumonitor.c
+++ b/src/modules/sysinfo/cpumonitor/cpumonitor.c
@@ -51,8 +51,9 @@ _cpumonitor_cb_usage_check_notify(void *data,
    Thread_Config *thc = data;
    Instance *inst = thc->inst;
 
-   if (inst->cfg->esm != E_SYSINFO_MODULE_CPUMONITOR && inst->cfg->esm != 
E_SYSINFO_MODULE_SYSINFO) return;
    if (!inst->cfg) return;
+   if (inst->cfg->esm != E_SYSINFO_MODULE_CPUMONITOR && inst->cfg->esm != 
E_SYSINFO_MODULE_SYSINFO) return;
+
    _cpumonitor_face_update(inst);
 }
 
diff --git a/src/modules/sysinfo/memusage/memusage.c 
b/src/modules/sysinfo/memusage/memusage.c
index 59db577..5a5387c 100644
--- a/src/modules/sysinfo/memusage/memusage.c
+++ b/src/modules/sysinfo/memusage/memusage.c
@@ -49,8 +49,9 @@ _memusage_cb_usage_check_notify(void *data,
    Thread_Config *thc = data;
    Instance *inst = thc->inst;
 
-   if (inst->cfg->esm != E_SYSINFO_MODULE_MEMUSAGE && inst->cfg->esm != 
E_SYSINFO_MODULE_SYSINFO) return;
    if (!inst->cfg) return;
+   if (inst->cfg->esm != E_SYSINFO_MODULE_MEMUSAGE && inst->cfg->esm != 
E_SYSINFO_MODULE_SYSINFO) return;
+
    _memusage_face_update(inst, thc->memstatus, thc->swapstatus);
 }
 
diff --git a/src/modules/sysinfo/memusage/memusage_proc.c 
b/src/modules/sysinfo/memusage/memusage_proc.c
index 5411e53..9a91196 100644
--- a/src/modules/sysinfo/memusage/memusage_proc.c
+++ b/src/modules/sysinfo/memusage/memusage_proc.c
@@ -32,7 +32,8 @@ int _memusage_proc_getswapusage(void)
         fclose(f);
 
         swap_used = swap_total - swap_free;
-        percent = 100 * ((float)swap_used / (float)swap_total);
+        if (swap_total > 0)
+          percent = 100 * ((float)swap_used / (float)swap_total);
      }
    if (percent > 100) percent = 100;
    else if (percent < 0) percent = 0;
@@ -72,7 +73,8 @@ int _memusage_proc_getmemusage(void)
         fclose(f);
 
         mem_used = mem_total - mem_free;
-        percent = 100 * ((float)mem_used / (float)mem_total);
+        if (mem_total > 0)
+          percent = 100 * ((float)mem_used / (float)mem_total);
      }
    if (percent > 100) percent = 100;
    else if (percent < 0) percent = 0;
diff --git a/src/modules/sysinfo/netstatus/netstatus.c 
b/src/modules/sysinfo/netstatus/netstatus.c
index 693ea0a..df8fb59 100644
--- a/src/modules/sysinfo/netstatus/netstatus.c
+++ b/src/modules/sysinfo/netstatus/netstatus.c
@@ -63,8 +63,9 @@ _netstatus_cb_usage_check_notify(void *data,
    Thread_Config *thc = data;
    Instance *inst = thc->inst;
 
-   if (inst->cfg->esm != E_SYSINFO_MODULE_NETSTATUS && inst->cfg->esm != 
E_SYSINFO_MODULE_SYSINFO) return;
    if (!inst->cfg) return;
+   if (inst->cfg->esm != E_SYSINFO_MODULE_NETSTATUS && inst->cfg->esm != 
E_SYSINFO_MODULE_SYSINFO) return;
+
    _netstatus_face_update(inst, EINA_FALSE, thc->rstatus);
    _netstatus_face_update(inst, EINA_TRUE, thc->tstatus);
 }
diff --git a/src/modules/sysinfo/thermal/thermal_fallback.c 
b/src/modules/sysinfo/thermal/thermal_fallback.c
index 463ca3c..1135fe1 100644
--- a/src/modules/sysinfo/thermal/thermal_fallback.c
+++ b/src/modules/sysinfo/thermal/thermal_fallback.c
@@ -293,7 +293,7 @@ check(Tempthread *tth)
           {
              char dummy[4096];
 
-
+             if (fgets(buf, sizeof(buf), f) == NULL) goto error;
              fclose(f);
              f = NULL;
              if (sscanf(buf, "%s %s %i", dummy, dummy, &temp) == 3)

-- 


Reply via email to