forked from enlightenment/enlightenment
cleanup battery module
- Only open one connection to dbus (e_dbus_bus_get) and then close it on shutdown. - Fix autodetection of backend. SVN revision: 51764
This commit is contained in:
parent
6ad79e964f
commit
d1b854b9c1
|
@ -19,43 +19,41 @@ extern Eina_List *device_batteries;
|
||||||
extern Eina_List *device_ac_adapters;
|
extern Eina_List *device_ac_adapters;
|
||||||
extern double init_time;
|
extern double init_time;
|
||||||
|
|
||||||
|
static E_DBus_Connection *e_dbus_conn = NULL;
|
||||||
|
|
||||||
void
|
int
|
||||||
_battery_dbus_start(void)
|
_battery_dbus_start(void)
|
||||||
{
|
{
|
||||||
E_DBus_Connection *conn;
|
e_dbus_conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
|
||||||
|
if (!e_dbus_conn) return 0;
|
||||||
conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
|
|
||||||
if (!conn) return;
|
|
||||||
|
|
||||||
// FIXME: e_dbus doesnt allow us to track this pending call
|
// FIXME: e_dbus doesnt allow us to track this pending call
|
||||||
e_hal_manager_find_device_by_capability
|
e_hal_manager_find_device_by_capability
|
||||||
(conn, "battery", _battery_dbus_find_battery, NULL);
|
(e_dbus_conn, "battery", _battery_dbus_find_battery, NULL);
|
||||||
e_hal_manager_find_device_by_capability
|
e_hal_manager_find_device_by_capability
|
||||||
(conn, "ac_adapter", _battery_dbus_find_ac, NULL);
|
(e_dbus_conn, "ac_adapter", _battery_dbus_find_ac, NULL);
|
||||||
battery_config->dbus.dev_add =
|
battery_config->dbus.dev_add =
|
||||||
e_dbus_signal_handler_add(conn, E_HAL_SENDER,
|
e_dbus_signal_handler_add(e_dbus_conn, E_HAL_SENDER,
|
||||||
E_HAL_MANAGER_PATH,
|
E_HAL_MANAGER_PATH,
|
||||||
E_HAL_MANAGER_INTERFACE,
|
E_HAL_MANAGER_INTERFACE,
|
||||||
"DeviceAdded", _battery_dbus_dev_add, NULL);
|
"DeviceAdded", _battery_dbus_dev_add, NULL);
|
||||||
battery_config->dbus.dev_del =
|
battery_config->dbus.dev_del =
|
||||||
e_dbus_signal_handler_add(conn, E_HAL_SENDER,
|
e_dbus_signal_handler_add(e_dbus_conn, E_HAL_SENDER,
|
||||||
E_HAL_MANAGER_PATH,
|
E_HAL_MANAGER_PATH,
|
||||||
E_HAL_MANAGER_INTERFACE,
|
E_HAL_MANAGER_INTERFACE,
|
||||||
"DeviceRemoved", _battery_dbus_dev_del, NULL);
|
"DeviceRemoved", _battery_dbus_dev_del, NULL);
|
||||||
init_time = ecore_time_get();
|
init_time = ecore_time_get();
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
_battery_dbus_stop(void)
|
_battery_dbus_stop(void)
|
||||||
{
|
{
|
||||||
E_DBus_Connection *conn;
|
|
||||||
Ac_Adapter *ac;
|
Ac_Adapter *ac;
|
||||||
Battery *bat;
|
Battery *bat;
|
||||||
|
|
||||||
conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
|
if (!e_dbus_conn) return;
|
||||||
if (!conn) return;
|
|
||||||
if (battery_config->dbus.have)
|
if (battery_config->dbus.have)
|
||||||
{
|
{
|
||||||
dbus_pending_call_cancel(battery_config->dbus.have);
|
dbus_pending_call_cancel(battery_config->dbus.have);
|
||||||
|
@ -63,24 +61,24 @@ _battery_dbus_stop(void)
|
||||||
}
|
}
|
||||||
if (battery_config->dbus.dev_add)
|
if (battery_config->dbus.dev_add)
|
||||||
{
|
{
|
||||||
e_dbus_signal_handler_del(conn, battery_config->dbus.dev_add);
|
e_dbus_signal_handler_del(e_dbus_conn, battery_config->dbus.dev_add);
|
||||||
battery_config->dbus.dev_add = NULL;
|
battery_config->dbus.dev_add = NULL;
|
||||||
}
|
}
|
||||||
if (battery_config->dbus.dev_del)
|
if (battery_config->dbus.dev_del)
|
||||||
{
|
{
|
||||||
e_dbus_signal_handler_del(conn, battery_config->dbus.dev_del);
|
e_dbus_signal_handler_del(e_dbus_conn, battery_config->dbus.dev_del);
|
||||||
battery_config->dbus.dev_del = NULL;
|
battery_config->dbus.dev_del = NULL;
|
||||||
}
|
}
|
||||||
EINA_LIST_FREE(device_ac_adapters, ac)
|
EINA_LIST_FREE(device_ac_adapters, ac)
|
||||||
{
|
{
|
||||||
e_dbus_signal_handler_del(conn, ac->prop_change);
|
e_dbus_signal_handler_del(e_dbus_conn, ac->prop_change);
|
||||||
eina_stringshare_del(ac->udi);
|
eina_stringshare_del(ac->udi);
|
||||||
eina_stringshare_del(ac->product);
|
eina_stringshare_del(ac->product);
|
||||||
free(ac);
|
free(ac);
|
||||||
}
|
}
|
||||||
EINA_LIST_FREE(device_batteries, bat)
|
EINA_LIST_FREE(device_batteries, bat)
|
||||||
{
|
{
|
||||||
e_dbus_signal_handler_del(conn, bat->prop_change);
|
e_dbus_signal_handler_del(e_dbus_conn, bat->prop_change);
|
||||||
eina_stringshare_del(bat->udi);
|
eina_stringshare_del(bat->udi);
|
||||||
eina_stringshare_del(bat->technology);
|
eina_stringshare_del(bat->technology);
|
||||||
eina_stringshare_del(bat->type);
|
eina_stringshare_del(bat->type);
|
||||||
|
@ -89,6 +87,8 @@ _battery_dbus_stop(void)
|
||||||
eina_stringshare_del(bat->vendor);
|
eina_stringshare_del(bat->vendor);
|
||||||
free(bat);
|
free(bat);
|
||||||
}
|
}
|
||||||
|
e_dbus_connection_close(e_dbus_conn);
|
||||||
|
e_dbus_conn = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -183,36 +183,25 @@ _battery_dbus_ac_adapter_props(void *data, void *reply_data, DBusError *error __
|
||||||
static void
|
static void
|
||||||
_battery_dbus_battery_property_changed(void *data, DBusMessage *msg __UNUSED__)
|
_battery_dbus_battery_property_changed(void *data, DBusMessage *msg __UNUSED__)
|
||||||
{
|
{
|
||||||
E_DBus_Connection *conn;
|
|
||||||
|
|
||||||
conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
|
|
||||||
if (!conn) return;
|
|
||||||
// FIXME: e_dbus doesnt allow us to track this pending call
|
// FIXME: e_dbus doesnt allow us to track this pending call
|
||||||
e_hal_device_get_all_properties(conn, ((Battery *)data)->udi,
|
e_hal_device_get_all_properties(e_dbus_conn, ((Battery *)data)->udi,
|
||||||
_battery_dbus_battery_props, data);
|
_battery_dbus_battery_props, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_battery_dbus_ac_adapter_property_changed(void *data, DBusMessage *msg __UNUSED__)
|
_battery_dbus_ac_adapter_property_changed(void *data, DBusMessage *msg __UNUSED__)
|
||||||
{
|
{
|
||||||
E_DBus_Connection *conn;
|
|
||||||
|
|
||||||
conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
|
|
||||||
if (!conn) return;
|
|
||||||
// FIXME: e_dbus doesnt allow us to track this pending call
|
// FIXME: e_dbus doesnt allow us to track this pending call
|
||||||
e_hal_device_get_all_properties(conn, ((Ac_Adapter *)data)->udi,
|
e_hal_device_get_all_properties(e_dbus_conn, ((Ac_Adapter *)data)->udi,
|
||||||
_battery_dbus_ac_adapter_props, data);
|
_battery_dbus_ac_adapter_props, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_battery_dbus_battery_add(const char *udi)
|
_battery_dbus_battery_add(const char *udi)
|
||||||
{
|
{
|
||||||
E_DBus_Connection *conn;
|
|
||||||
Battery *bat;
|
Battery *bat;
|
||||||
|
|
||||||
bat = _battery_battery_find(udi);
|
bat = _battery_battery_find(udi);
|
||||||
conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
|
|
||||||
if (!conn) return;
|
|
||||||
if (!bat)
|
if (!bat)
|
||||||
{
|
{
|
||||||
bat = E_NEW(Battery, 1);
|
bat = E_NEW(Battery, 1);
|
||||||
|
@ -220,13 +209,13 @@ _battery_dbus_battery_add(const char *udi)
|
||||||
bat->udi = eina_stringshare_add(udi);
|
bat->udi = eina_stringshare_add(udi);
|
||||||
device_batteries = eina_list_append(device_batteries, bat);
|
device_batteries = eina_list_append(device_batteries, bat);
|
||||||
bat->prop_change =
|
bat->prop_change =
|
||||||
e_dbus_signal_handler_add(conn, E_HAL_SENDER, udi,
|
e_dbus_signal_handler_add(e_dbus_conn, E_HAL_SENDER, udi,
|
||||||
E_HAL_DEVICE_INTERFACE, "PropertyModified",
|
E_HAL_DEVICE_INTERFACE, "PropertyModified",
|
||||||
_battery_dbus_battery_property_changed,
|
_battery_dbus_battery_property_changed,
|
||||||
bat);
|
bat);
|
||||||
}
|
}
|
||||||
// FIXME: e_dbus doesnt allow us to track this pending call
|
// FIXME: e_dbus doesnt allow us to track this pending call
|
||||||
e_hal_device_get_all_properties(conn, udi,
|
e_hal_device_get_all_properties(e_dbus_conn, udi,
|
||||||
_battery_dbus_battery_props, bat);
|
_battery_dbus_battery_props, bat);
|
||||||
|
|
||||||
_battery_device_update();
|
_battery_device_update();
|
||||||
|
@ -235,16 +224,13 @@ _battery_dbus_battery_add(const char *udi)
|
||||||
static void
|
static void
|
||||||
_battery_dbus_battery_del(const char *udi)
|
_battery_dbus_battery_del(const char *udi)
|
||||||
{
|
{
|
||||||
E_DBus_Connection *conn;
|
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
Battery *bat;
|
Battery *bat;
|
||||||
|
|
||||||
conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
|
|
||||||
if (!conn) return;
|
|
||||||
bat = _battery_battery_find(udi);
|
bat = _battery_battery_find(udi);
|
||||||
if (bat)
|
if (bat)
|
||||||
{
|
{
|
||||||
e_dbus_signal_handler_del(conn, bat->prop_change);
|
e_dbus_signal_handler_del(e_dbus_conn, bat->prop_change);
|
||||||
l = eina_list_data_find(device_batteries, bat);
|
l = eina_list_data_find(device_batteries, bat);
|
||||||
eina_stringshare_del(bat->udi);
|
eina_stringshare_del(bat->udi);
|
||||||
eina_stringshare_del(bat->technology);
|
eina_stringshare_del(bat->technology);
|
||||||
|
@ -262,22 +248,19 @@ _battery_dbus_battery_del(const char *udi)
|
||||||
static void
|
static void
|
||||||
_battery_dbus_ac_adapter_add(const char *udi)
|
_battery_dbus_ac_adapter_add(const char *udi)
|
||||||
{
|
{
|
||||||
E_DBus_Connection *conn;
|
|
||||||
Ac_Adapter *ac;
|
Ac_Adapter *ac;
|
||||||
|
|
||||||
conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
|
|
||||||
if (!conn) return;
|
|
||||||
ac = E_NEW(Ac_Adapter, 1);
|
ac = E_NEW(Ac_Adapter, 1);
|
||||||
if (!ac) return;
|
if (!ac) return;
|
||||||
ac->udi = eina_stringshare_add(udi);
|
ac->udi = eina_stringshare_add(udi);
|
||||||
device_ac_adapters = eina_list_append(device_ac_adapters, ac);
|
device_ac_adapters = eina_list_append(device_ac_adapters, ac);
|
||||||
ac->prop_change =
|
ac->prop_change =
|
||||||
e_dbus_signal_handler_add(conn, E_HAL_SENDER, udi,
|
e_dbus_signal_handler_add(e_dbus_conn, E_HAL_SENDER, udi,
|
||||||
E_HAL_DEVICE_INTERFACE, "PropertyModified",
|
E_HAL_DEVICE_INTERFACE, "PropertyModified",
|
||||||
_battery_dbus_ac_adapter_property_changed,
|
_battery_dbus_ac_adapter_property_changed,
|
||||||
ac);
|
ac);
|
||||||
// FIXME: e_dbus doesnt allow us to track this pending call
|
// FIXME: e_dbus doesnt allow us to track this pending call
|
||||||
e_hal_device_get_all_properties(conn, udi,
|
e_hal_device_get_all_properties(e_dbus_conn, udi,
|
||||||
_battery_dbus_ac_adapter_props, ac);
|
_battery_dbus_ac_adapter_props, ac);
|
||||||
_battery_device_update();
|
_battery_device_update();
|
||||||
}
|
}
|
||||||
|
@ -285,16 +268,13 @@ _battery_dbus_ac_adapter_add(const char *udi)
|
||||||
static void
|
static void
|
||||||
_battery_dbus_ac_adapter_del(const char *udi)
|
_battery_dbus_ac_adapter_del(const char *udi)
|
||||||
{
|
{
|
||||||
E_DBus_Connection *conn;
|
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
Ac_Adapter *ac;
|
Ac_Adapter *ac;
|
||||||
|
|
||||||
conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
|
|
||||||
if (!conn) return;
|
|
||||||
ac = _battery_ac_adapter_find(udi);
|
ac = _battery_ac_adapter_find(udi);
|
||||||
if (ac)
|
if (ac)
|
||||||
{
|
{
|
||||||
e_dbus_signal_handler_del(conn, ac->prop_change);
|
e_dbus_signal_handler_del(e_dbus_conn, ac->prop_change);
|
||||||
l = eina_list_data_find(device_ac_adapters, ac);
|
l = eina_list_data_find(device_ac_adapters, ac);
|
||||||
eina_stringshare_del(ac->udi);
|
eina_stringshare_del(ac->udi);
|
||||||
eina_stringshare_del(ac->product);
|
eina_stringshare_del(ac->product);
|
||||||
|
@ -393,17 +373,14 @@ _battery_dbus_dev_add(void *data __UNUSED__, DBusMessage *msg)
|
||||||
{
|
{
|
||||||
DBusError err;
|
DBusError err;
|
||||||
char *udi = NULL;
|
char *udi = NULL;
|
||||||
E_DBus_Connection *conn;
|
|
||||||
|
|
||||||
dbus_error_init(&err);
|
dbus_error_init(&err);
|
||||||
dbus_message_get_args(msg, &err, DBUS_TYPE_STRING, &udi, DBUS_TYPE_INVALID);
|
dbus_message_get_args(msg, &err, DBUS_TYPE_STRING, &udi, DBUS_TYPE_INVALID);
|
||||||
if (!udi) return;
|
if (!udi) return;
|
||||||
conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
|
|
||||||
if (!conn) return;
|
|
||||||
// FIXME: e_dbus doesnt allow us to track this pending call
|
// FIXME: e_dbus doesnt allow us to track this pending call
|
||||||
e_hal_device_query_capability(conn, udi, "battery",
|
e_hal_device_query_capability(e_dbus_conn, udi, "battery",
|
||||||
_battery_dbus_is_battery, (void*)eina_stringshare_add(udi));
|
_battery_dbus_is_battery, (void*)eina_stringshare_add(udi));
|
||||||
e_hal_device_query_capability(conn, udi, "ac_adapter",
|
e_hal_device_query_capability(e_dbus_conn, udi, "ac_adapter",
|
||||||
_battery_dbus_is_ac_adapter, (void*)eina_stringshare_add(udi));
|
_battery_dbus_is_ac_adapter, (void*)eina_stringshare_add(udi));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -344,6 +344,7 @@ _battery_config_updated(void)
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
Instance *inst;
|
Instance *inst;
|
||||||
char buf[4096];
|
char buf[4096];
|
||||||
|
int ok = 0;
|
||||||
|
|
||||||
if (!battery_config) return;
|
if (!battery_config) return;
|
||||||
|
|
||||||
|
@ -352,24 +353,27 @@ _battery_config_updated(void)
|
||||||
EINA_LIST_FOREACH(battery_config->instances, l, inst)
|
EINA_LIST_FOREACH(battery_config->instances, l, inst)
|
||||||
_battery_warning_popup_destroy(inst);
|
_battery_warning_popup_destroy(inst);
|
||||||
}
|
}
|
||||||
if (battery_config->have_subsystem == UNKNOWN)
|
|
||||||
{
|
|
||||||
#ifdef HAVE_EEZE
|
|
||||||
battery_config->have_subsystem = SUBSYSTEM;
|
|
||||||
#else
|
|
||||||
if (!e_dbus_bus_get(DBUS_BUS_SYSTEM))
|
|
||||||
battery_config->have_subsystem = NOSUBSYSTEM;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((battery_config->have_subsystem == NOSUBSYSTEM) ||
|
|
||||||
(battery_config->force_mode == NOSUBSYSTEM))
|
|
||||||
{
|
|
||||||
if (battery_config->batget_exe)
|
if (battery_config->batget_exe)
|
||||||
{
|
{
|
||||||
ecore_exe_terminate(battery_config->batget_exe);
|
ecore_exe_terminate(battery_config->batget_exe);
|
||||||
ecore_exe_free(battery_config->batget_exe);
|
ecore_exe_free(battery_config->batget_exe);
|
||||||
|
battery_config->batget_exe = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((battery_config->force_mode == UNKNOWN) ||
|
||||||
|
(battery_config->force_mode == SUBSYSTEM))
|
||||||
|
{
|
||||||
|
#ifdef HAVE_EEZE
|
||||||
|
ok = _battery_udev_start();
|
||||||
|
#else
|
||||||
|
ok = _battery_dbus_start();
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
if (ok) return;
|
||||||
|
|
||||||
|
if ((battery_config->force_mode == UNKNOWN) ||
|
||||||
|
(battery_config->force_mode == NOSUBSYSTEM))
|
||||||
|
{
|
||||||
snprintf(buf, sizeof(buf), "%s/%s/batget %i",
|
snprintf(buf, sizeof(buf), "%s/%s/batget %i",
|
||||||
e_module_dir_get(battery_config->module), MODULE_ARCH,
|
e_module_dir_get(battery_config->module), MODULE_ARCH,
|
||||||
battery_config->poll_interval);
|
battery_config->poll_interval);
|
||||||
|
@ -379,29 +383,6 @@ _battery_config_updated(void)
|
||||||
ECORE_EXE_PIPE_READ_LINE_BUFFERED |
|
ECORE_EXE_PIPE_READ_LINE_BUFFERED |
|
||||||
ECORE_EXE_NOT_LEADER, NULL);
|
ECORE_EXE_NOT_LEADER, NULL);
|
||||||
}
|
}
|
||||||
else if ((battery_config->have_subsystem == UNKNOWN) ||
|
|
||||||
(battery_config->force_mode == SUBSYSTEM))
|
|
||||||
{
|
|
||||||
if (battery_config->batget_exe)
|
|
||||||
{
|
|
||||||
ecore_exe_terminate(battery_config->batget_exe);
|
|
||||||
ecore_exe_free(battery_config->batget_exe);
|
|
||||||
battery_config->batget_exe = NULL;
|
|
||||||
}
|
|
||||||
#ifdef HAVE_EEZE
|
|
||||||
_battery_udev_start();
|
|
||||||
#else
|
|
||||||
E_DBus_Connection *conn;
|
|
||||||
conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
|
|
||||||
if (conn)
|
|
||||||
{
|
|
||||||
battery_config->have_subsystem = SUBSYSTEM;
|
|
||||||
_battery_dbus_start();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
battery_config->have_subsystem = NOSUBSYSTEM;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
|
|
|
@ -37,7 +37,6 @@ struct _Config
|
||||||
int time_full;
|
int time_full;
|
||||||
int have_battery;
|
int have_battery;
|
||||||
int have_power;
|
int have_power;
|
||||||
int have_subsystem;
|
|
||||||
#ifdef HAVE_EEZE
|
#ifdef HAVE_EEZE
|
||||||
Eeze_Udev_Watch *acwatch;
|
Eeze_Udev_Watch *acwatch;
|
||||||
Eeze_Udev_Watch *batwatch;
|
Eeze_Udev_Watch *batwatch;
|
||||||
|
@ -110,12 +109,12 @@ Ac_Adapter *_battery_ac_adapter_find(const char *udi);
|
||||||
void _battery_device_update(void);
|
void _battery_device_update(void);
|
||||||
#ifdef HAVE_EEZE
|
#ifdef HAVE_EEZE
|
||||||
/* in e_mod_udev.c */
|
/* in e_mod_udev.c */
|
||||||
void _battery_udev_start(void);
|
int _battery_udev_start(void);
|
||||||
void _battery_udev_stop(void);
|
void _battery_udev_stop(void);
|
||||||
/* end e_mod_udev.c */
|
/* end e_mod_udev.c */
|
||||||
#else
|
#else
|
||||||
/* in e_mod_dbus.c */
|
/* in e_mod_dbus.c */
|
||||||
void _battery_dbus_start(void);
|
int _battery_dbus_start(void);
|
||||||
void _battery_dbus_stop(void);
|
void _battery_dbus_stop(void);
|
||||||
/* end e_mod_dbus.c */
|
/* end e_mod_dbus.c */
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -15,7 +15,7 @@ extern Eina_List *device_batteries;
|
||||||
extern Eina_List *device_ac_adapters;
|
extern Eina_List *device_ac_adapters;
|
||||||
extern double init_time;
|
extern double init_time;
|
||||||
|
|
||||||
void
|
int
|
||||||
_battery_udev_start(void)
|
_battery_udev_start(void)
|
||||||
{
|
{
|
||||||
Eina_List *devices;
|
Eina_List *devices;
|
||||||
|
@ -35,6 +35,7 @@ _battery_udev_start(void)
|
||||||
battery_config->acwatch = eeze_udev_watch_add(EEZE_UDEV_TYPE_POWER_AC, EEZE_UDEV_EVENT_NONE, _battery_udev_event_ac, NULL);
|
battery_config->acwatch = eeze_udev_watch_add(EEZE_UDEV_TYPE_POWER_AC, EEZE_UDEV_EVENT_NONE, _battery_udev_event_ac, NULL);
|
||||||
|
|
||||||
init_time = ecore_time_get();
|
init_time = ecore_time_get();
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
Loading…
Reference in New Issue