guint interval, GSourceFunc function, gpointer data, GDestroyNotify notify);
void _uam_remove_timer(guint id);
-#define CASE_TO_STR(x) case x: return #x;
-
const char* _uam_get_sensor_str(unsigned int ids);
#ifdef __cplusplus
#define UAM_VERSION "0.1"
-#define LIB_PATH_SIZE 4096 + 1
-#define LIB_NAME_SIZE 255 + 1
+#define PATH_MAX 4096 + 1 /**< Max. linux path length */
+#define NAME_MAX 255 + 1 /**< Max. linux file name length */
typedef enum {
UAM_DETECT_PRESENCE = 0x01,
static void __uam_clear_ppm_reqs(void)
{
- while (ppm_reqs) {
- ppm_reqs = g_list_remove(ppm_reqs, ppm_reqs->data);
- }
- g_list_free(ppm_reqs);
+ g_list_free_full(ppm_reqs, g_free);
ppm_reqs = NULL;
}
static gboolean __uam_is_busy(uas_plugin_id_e ids)
{
- GList *head = NULL;
- GList *iter = NULL;
-
- head = ppm_reqs;
- iter = head;
+ GList *head = ppm_reqs;
+ GList *iter = head;
while (NULL != iter) {
GList *next = iter->next;
con->tid = TIMER_OFF;
ppm_reqs = g_list_remove(ppm_reqs, con);
+ g_free(con);
con = NULL;
UAM_DBG("[%d] request canceled", ids);
{
FUNC_ENTRY;
- /* Deinitialize and unload sensor plugins */
- uam_power_plugin_info_t *plugin = pwr_plugin;
- if (!plugin) {
+ /* Deinitialize and unload power plugins */
+ if (!pwr_plugin) {
UAM_WARN("Power plugin is NULL");
return;
}
- if (plugin->api && plugin->api->deinit)
- plugin->api->deinit();
- if (plugin->module && plugin->module->deinit)
- plugin->module->deinit();
- if (plugin->handle)
- dlclose(plugin->handle);
+ if (pwr_plugin->api && pwr_plugin->api->deinit)
+ pwr_plugin->api->deinit();
+ if (pwr_plugin->module && pwr_plugin->module->deinit)
+ pwr_plugin->module->deinit();
+ if (pwr_plugin->handle)
+ dlclose(pwr_plugin->handle);
- g_free(plugin);
- plugin = NULL;
+ g_free(pwr_plugin);
+ pwr_plugin = NULL;
FUNC_EXIT;
}
FUNC_ENTRY;
uap_api_t *api = NULL;
- uam_power_plugin_info_t *plugin;
+ uam_power_plugin_info_t *plugin = pwr_plugin;
UAM_DBG("Plugin [id: %d, name: %s, version: %s]",
module->id, module->name, module->version);
retv_if(NULL == function, 0);
- source = res == TIMER_RES_MSEC ? g_timeout_source_new(interval)
- : g_timeout_source_new_seconds(interval);
+ if (TIMER_RES_MSEC)
+ source = g_timeout_source_new(interval);
+ else
+ source = g_timeout_source_new_seconds(interval);
retv_if(NULL == source, 0);
if (priority != G_PRIORITY_DEFAULT)
g_source_set_priority(source, priority);
+
g_source_set_callback(source, function, data, notify);
id = g_source_attach(source, NULL);
g_source_unref(source);
return id;
}
-const char* _uam_get_sensor_str(uas_plugin_id_e ids)
+#define CASE_TO_STR(x) case x: return #x;
+
+const char *_uam_get_sensor_str(uas_plugin_id_e ids)
{
switch (ids) {
CASE_TO_STR(UAS_PLUGIN_ID_BLE)