ret = system_info_get_platform_bool(BATTERY_FEATURE, &battery_avail);
if (ret < 0) {
+//LCOV_EXCL_START System Error
_E("Failed to get value of battery feature");
return false;
+//LCOV_EXCL_STOP
} else if (ret == 0 && !battery_avail) {
+//LCOV_EXCL_START System Error
_D("Battery is not supported");
return false;
+//LCOV_EXCL_STOP
} else
return true;
}
return ret;
}
-//LCOV_EXCL_START unused function
-
static int load_battery_plugin()
{
if (plugin_battery_get_info)
if (!handle) {
handle = dlopen(BATTERY_PLUGIN, RTLD_NOW);
if (!handle) {
+//LCOV_EXCL_START System Error
_E("Failed to open '%s' : %s", BATTERY_PLUGIN, dlerror());
return -1;
+//LCOV_EXCL_STOP
}
}
plugin_battery_get_info = (int (*)(void *))dlsym(handle, GET_INFO_FUNC);
if (!plugin_battery_get_info) {
+//LCOV_EXCL_START System Error
_E("Failed to get symbol '%s' : %s", GET_INFO_FUNC, dlerror());
return -1;
+//LCOV_EXCL_STOP
}
return 0;
ret = plugin_battery_get_info(info);
if (ret < 0) {
+//LCOV_EXCL_START System Error
_E("Failed to get battery info: %d", ret);
return DEVICE_ERROR_OPERATION_FAILED;
+//LCOV_EXCL_STOP
}
return DEVICE_ERROR_NONE;
}
-//LCOV_EXCL_STOP
int device_battery_get_health(device_battery_health_e *health)
{
conn = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, &err);
if (!conn) {
- _E("fail to get dbus connection : %s", err->message); //LCOV_EXCL_LINE
- g_clear_error(&err); //LCOV_EXCL_LINE System Error
+//LCOV_EXCL_START System Error
+ _E("fail to get dbus connection : %s", err->message);
+ g_clear_error(&err);
return -EPERM;
+//LCOV_EXCL_STOP
}
/* subscribe signal */
NULL,
NULL);
if (id == 0) {
- _E("fail to connect %s signal", signal); //LCOV_EXCL_LINE
+//LCOV_EXCL_START System Error
+ _E("fail to connect %s signal", signal);
return -EPERM;
+//LCOV_EXCL_STOP
}
if (sig_id)
conn = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, &err);
if (!conn) {
- _E("fail to get dbus connection : %s", err->message); //LCOV_EXCL_LINE
- g_clear_error(&err); //LCOV_EXCL_LINE System Error
+//LCOV_EXCL_START System Error
+ _E("fail to get dbus connection : %s", err->message);
+ g_clear_error(&err);
return -EPERM;
+//LCOV_EXCL_STOP
}
/* unsubscribe signal */
if (n == 0) {
ret = release_request(type);
if (ret < 0)
- return DEVICE_ERROR_OPERATION_FAILED;
+ return DEVICE_ERROR_OPERATION_FAILED; //LCOV_EXCL_LINE System Error
}
return DEVICE_ERROR_NONE;
int lineno = 0, ret = 0;
if (!file_name || !cb) {
+//LCOV_EXCL_START System Error
ret = -EINVAL;
goto error;
+//LCOV_EXCL_STOP
}
/* open conf file */
/* parse section */
end = strchr(start, ']');
if (!end || *end != ']') {
+//LCOV_EXCL_START System Error
ret = -EBADMSG;
goto error;
+//LCOV_EXCL_STOP
}
*end = '\0';
/* parse name & value */
end = strchr(start, '=');
if (!end || *end != '=') {
+//LCOV_EXCL_START System Error
ret = -EBADMSG;
goto error;
+//LCOV_EXCL_STOP
}
*end = '\0';
name = trim_str(start);
/* callback with parse result */
ret = cb(&result, user_data);
if (ret < 0) {
+//LCOV_EXCL_START System Error
ret = -EBADMSG;
goto error;
+//LCOV_EXCL_STOP
}
}
}
fclose(f);
return 0;
-error:
//LCOV_EXCL_START System Error
+error:
if (f)
fclose(f);
_E("Failed to read %s:%d!", file_name, lineno);
return 0;
}
+//LCOV_EXCL_START Not used function
bool is_emulator(void)
{
int ret;
return emul;
}
+//EXCL_LCOV_STOP
int is_display_supported(void)
{
ret = system_info_get_platform_bool(DISPLAY_FEATURE, &display_avail);
if (ret < 0) {
+//LCOV_EXCL_START System Error
_E("Failed to get value of display feature");
return false;
+//LCOV_EXCL_STOP
} else if (ret == 0 && !display_avail) {
+//LCOV_EXCL_START System Error
_D("Display feature is not supported");
return false;
+//LCOV_EXCL_STOP
} else
return true;
}
ret = system_info_get_platform_bool(DISPLAY_STATE_FEATURE, &display_state_avail);
if (ret < 0) {
+//LCOV_EXCL_START System Error
_E("Failed to get value of display state feature");
return false;
+//LCOV_EXCL_STOP
} else if (ret == 0 && !display_state_avail) {
+//LCOV_EXCL_START System Error
_D("Display state feature is not supported");
return false;
+//LCOV_EXCL_STOP
} else
return true;
}
g_set_error(err, G_IO_ERROR,
G_IO_ERROR_INVALID_ARGUMENT,
"Cannot determine destination address");
-//LCOV_EXCL_STOP
return NULL;
+//LCOV_EXCL_STOP
}
/* find matched proxy node in proxy pool */
return result;
}
+//LCOV_EXCL_START Not used function
int dbus_method_sync(const char *dest, const char *path,
const char *interface, const char *method,
const char *sig, const char *param[])
method,
append_g_variant(sig, param));
}
+//EXCL_LCOV_STOP
int dbus_method_sync_with_reply_var(const char *dest,
const char *path, const char *interface,
return DEVICE_ERROR_NONE;
}
+//LCOV_EXCL_START Not used function
int dbus_method_sync_with_reply(const char *dest,
const char *path, const char *interface,
const char *method, const char *sig,
append_g_variant(sig, param),
info);
}
+//EXCL_LCOV_STOP
static void cb_pending(GDBusProxy *proxy,
GAsyncResult *res,
res, /* GAsyncResult */
&err);
if (!output)
- _E("g_dbus_proxy_call_finish error : %d-%s", //LCOV_EXCL_LINE
+ _E("g_dbus_proxy_call_finish error : %d-%s", //LCOV_EXCL_LINE Logs
err?err->code:0, err?err->message:"NULL");
if (data && data->func)
pdata = malloc(sizeof(struct pending_call_data));
if (!pdata) {
pthread_mutex_unlock(&dmutex);
- _E("malloc error : %s-%s", //LCOV_EXCL_LINE
- interface, method);
+//LCOV_EXCL_START System Error
+ _E("malloc error : %s-%s", interface, method);
return -ENOMEM;
+//LCOV_EXCL_STOP
}
pdata->func = cb;
g_object_unref(conn);
if (haptic_id == 0) {
- _E("Failed to subscrive bus signal"); //LCOV_EXCL_LINE System Error
+//LCOV_EXCL_START System Error
+ _E("Failed to subscrive bus signal");
return -EPERM;
+//LCOV_EXCL_STOP
}
return 0;
DEVICED_PATH_DISPLAY, DEVICED_INTERFACE_DISPLAY,
METHOD_GET_DISPLAY_COUNT, NULL);
if (ret < 0)
- return errno_to_device_error(ret);
+ return errno_to_device_error(ret); //LCOV_EXCL_LINE System Error
display_cnt = ret;
alloc_display();
}
DEVICED_PATH_DISPLAY, DEVICED_INTERFACE_DISPLAY,
METHOD_GET_MAX_BRIGHTNESS, g_variant_new("(i)", (int)DISPLAY_STATE_NORMAL));
if (ret < 0)
- return errno_to_device_error(ret);
+ return errno_to_device_error(ret); //LCOV_EXCL_LINE System Error
display_arr[display_index].normal_max = ret;
}
DEVICED_PATH_DISPLAY, DEVICED_INTERFACE_DISPLAY,
METHOD_GET_BRIGHTNESS, g_variant_new("(i)", (int)DISPLAY_STATE_NORMAL));
if (ret < 0)
- return errno_to_device_error(ret);
+ return errno_to_device_error(ret); //LCOV_EXCL_LINE System Error
*brightness = ret;
return DEVICE_ERROR_NONE;
DEVICED_PATH_DISPLAY, DEVICED_INTERFACE_DISPLAY,
METHOD_SET_BRIGHTNESS, g_variant_new("(ii)", (int)DISPLAY_STATE_NORMAL, brightness));
if (ret < 0)
- return errno_to_device_error(ret);
+ return errno_to_device_error(ret); //LCOV_EXCL_LINE System Error
return DEVICE_ERROR_NONE;
}
return DEVICE_ERROR_NOT_SUPPORTED;
if (check_async_call_rate() < 0) {
+//LCOV_EXCL_START System Error
_E("Rejected by too frequent calls; %d (calls per sec.) limit is violated."
, CHECK_RATE_THRESHOLD);
return DEVICE_ERROR_OPERATION_FAILED;
+//LCOV_EXCL_STOP
}
if (state < DISPLAY_STATE_NORMAL || state > DISPLAY_STATE_SCREEN_OFF)
METHOD_CHANGE_STATE, g_variant_new("(s)", str), change_cb, -1, NULL);
}
-//LCOV_EXCL_START Not used function
int device_display_get_max_brightness_state(int display_index, display_state_e state, int *brightness)
{
int ret;
return DEVICE_ERROR_NONE;
}
-//LCOV_EXCL_STOP
-//LCOV_EXCL_START Not used function
int device_display_get_brightness_state(int display_index, display_state_e state, int *brightness)
{
int ret;
return DEVICE_ERROR_NONE;
}
-//LCOV_EXCL_STOP
-//LCOV_EXCL_START Not used function
int device_display_set_brightness_state(int display_index, display_state_e state, int brightness)
{
int ret, max;
return errno_to_device_error(ret);
}
-
-//LCOV_EXCL_STOP
ret = system_info_get_platform_bool(VIBRATION_FEATURE, &haptic_avail);
if (ret < 0) {
+//LCOV_EXCL_START System Error
_E("Failed to get value of haptic feature");
return false;
+//LCOV_EXCL_STOP
} else if (ret == 0 && !haptic_avail) {
+//LCOV_EXCL_START System Error
_D("Haptic is not supported");
return false;
+//LCOV_EXCL_STOP
} else
return true;
}
if (DD_LIST_LENGTH(handle_list) == 1) {
ret = register_signal_handler();
if (ret < 0)
- _E("Faild to register signal handler"); //LCOV_EXCL_LINE
+ _E("Faild to register signal handler"); //LCOV_EXCL_LINE Logs
}
return DEVICE_ERROR_NONE;
if (DD_LIST_LENGTH(handle_list) == 0) {
ret = unregister_signal_handler();
if (ret < 0)
- _E("Failed to unregister signal handler"); //LCOV_EXCL_LINE
+ _E("Failed to unregister signal handler"); //LCOV_EXCL_LINE Logs
}
return DEVICE_ERROR_NONE;
_E("IR is not supported or IR operation failed");
return ret;
}
- _E("IR is not supported"); //LCOV_EXCL_LINE
+//LCOV_EXCL_START System Error
+ _E("IR is not supported");
return DEVICE_ERROR_OPERATION_FAILED;
+//LCOV_EXCL_STOP
}
//LCOV_EXCL_START System Error
if (!pattern)
ret = dbus_method_sync_var(DEVICED_BUS_NAME,
DEVICED_PATH_LED, DEVICED_INTERFACE_LED,
METHOD_PLAY_CUSTOM, g_variant_new("(iiuu)", on, off, (unsigned int)color, (unsigned int)flags));
-//LCOV_EXCL_START System Error
if (ret < 0)
- return errno_to_device_error(ret);
-//LCOV_EXCL_STOP
+ return errno_to_device_error(ret); //LCOV_EXCL_LINE System Error
+
return DEVICE_ERROR_NONE;
}
ret = dbus_method_sync_var(DEVICED_BUS_NAME,
DEVICED_PATH_LED, DEVICED_INTERFACE_LED,
METHOD_STOP_CUSTOM, NULL);
-//LCOV_EXCL_START System Error
if (ret < 0)
- return errno_to_device_error(ret);
-//LCOV_EXCL_STOP
+ return errno_to_device_error(ret); //LCOV_EXCL_LINE System Error
return DEVICE_ERROR_NONE;
}
-//LCOV_EXCL_START Not used function
int device_multi_led_get_number(int *num_of_leds)
{
int ret;
return dbus_method_sync_var(DEVICED_BUS_NAME, DEVICED_PATH_LED,
DEVICED_INTERFACE_LED, METHOD_MULTI_LED_CONTROL, var);
}
-//LCOV_EXCL_STOP
_I("power_lock_e = %d", type);
if (check_async_call_rate() < 0) {
+//LCOV_EXCL_START System Error
_E("Rejected by too frequent calls; %d (calls per sec.) limit is violated."
, CHECK_RATE_THRESHOLD);
return DEVICE_ERROR_OPERATION_FAILED;
+//LCOV_EXCL_STOP
}
if (timeout_ms < 0)
_I("power_lock_e = %d", type);
if (check_async_call_rate() < 0) {
+//LCOV_EXCL_START System Error
_E("Rejected by too frequent calls; %d (calls per sec.) limit is violated."
, CHECK_RATE_THRESHOLD);
return DEVICE_ERROR_OPERATION_FAILED;
+//LCOV_EXCL_STOP
}
if (type == POWER_LOCK_CPU) {
ret = config_parse(POWER_CONF, power_load_config, NULL);
if (ret < 0)
- _E("Failed to load config file (%d)", ret); //LCOV_EXCL_LINE
+ _E("Failed to load config file (%d)", ret); //LCOV_EXCL_LINE Logs
}
else
ret = system_info_get_platform_bool(THERMAL_BATTERY_FEATURE, &thermal_avail);
if (ret < 0) {
+//LCOV_EXCL_START System Error
_E("Failed to get value of temp feature : %d", ret);
return false;
+//LCOV_EXCL_STOP
} else if (ret == 0 && !thermal_avail) {
+//LCOV_EXCL_START System Error
_D("Temperature is not supported");
return false;
+//LCOV_EXCL_STOP
} else
return true;
}
DEVICED_INTERFACE_TEMPERATURE,
METHOD_GET_TEMPERATURE, g_variant_new("(i)", type));
if (ret < 0)
- return errno_to_device_error(ret);
+ return errno_to_device_error(ret); //LCOV_EXCL_LINE System Error
*temp = ret;
return DEVICE_ERROR_NONE;
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
#include "common.h"
#include "dbus.h"
#include "touchscreen-internal.h"
int device_touchscreen_enable(device_dbus_pending_cb cb)
{
int ret;
+
ret = dbus_method_async_with_reply(DEVICED_BUS_NAME,
DEVICED_PATH_TOUCH, DEVICED_INTERFACE_TOUCH,
METHOD_TOUCHSCREEN_ENABLE, NULL, NULL, cb, -1, NULL);
int device_touchscreen_disable(device_dbus_pending_cb cb)
{
int ret;
+
ret = dbus_method_async_with_reply(DEVICED_BUS_NAME,
DEVICED_PATH_TOUCH, DEVICED_INTERFACE_TOUCH,
METHOD_TOUCHSCREEN_DISABLE, NULL, NULL, cb, -1, NULL);