cpufreq - handle multiple instances right....
don't double free... @fix
This commit is contained in:
parent
83369e331a
commit
678103c73b
|
@ -103,9 +103,10 @@ _gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style)
|
||||||
|
|
||||||
_cpufreq_face_update_available(inst);
|
_cpufreq_face_update_available(inst);
|
||||||
|
|
||||||
cpufreq_config->handler =
|
if (!cpufreq_config->handler)
|
||||||
ecore_event_handler_add(E_EVENT_POWERSAVE_UPDATE,
|
cpufreq_config->handler =
|
||||||
_cpufreq_event_cb_powersave, NULL);
|
ecore_event_handler_add(E_EVENT_POWERSAVE_UPDATE,
|
||||||
|
_cpufreq_event_cb_powersave, NULL);
|
||||||
return gcc;
|
return gcc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -120,8 +121,14 @@ _gc_shutdown(E_Gadcon_Client *gcc)
|
||||||
evas_object_del(inst->o_cpu);
|
evas_object_del(inst->o_cpu);
|
||||||
free(inst);
|
free(inst);
|
||||||
|
|
||||||
if (cpufreq_config->handler)
|
if (!cpufreq_config->instances)
|
||||||
ecore_event_handler_del(cpufreq_config->handler);
|
{
|
||||||
|
if (cpufreq_config->handler)
|
||||||
|
{
|
||||||
|
ecore_event_handler_del(cpufreq_config->handler);
|
||||||
|
cpufreq_config->handler = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Loading…
Reference in New Issue