power: change the parameter of device_notify to the address 69/106969/2
authortaeyoung <ty317.kim@samsung.com>
Mon, 26 Dec 2016 03:59:44 +0000 (12:59 +0900)
committerTaeyoung Kim <ty317.kim@samsung.com>
Mon, 26 Dec 2016 05:39:38 +0000 (21:39 -0800)
The paramter of the device_notify is (void *). Thus
There can be a problem related witht the type if integer
value is delivered by casting to (void *).

Change-Id: I615249b97a7c08bd0f3e57456a23cb80c0ee8d9b
Signed-off-by: taeyoung <ty317.kim@samsung.com>
src/battery/power-supply.c

index 4117e05..737eed0 100644 (file)
@@ -135,13 +135,15 @@ static void health_timer_reset(void)
 
 static Eina_Bool health_timer_cb(void *data)
 {
+       int value = HEALTH_BAD;
+
        health_timer_reset();
 
        if (battery.health == HEALTH_GOOD)
                return EINA_FALSE;
 
        _I("popup - Battery health status is not good");
-       device_notify(DEVICE_NOTIFIER_BATTERY_HEALTH, (void *)HEALTH_BAD);
+       device_notify(DEVICE_NOTIFIER_BATTERY_HEALTH, (void *)&value);
        pm_change_internal(INTERNAL_LOCK_POPUP, LCD_NORMAL);
        pm_lock_internal(INTERNAL_LOCK_POPUP, LCD_DIM, STAY_CUR_STATE, 0);
        if (battery.temp == TEMP_LOW)
@@ -325,7 +327,7 @@ static void noti_batt_full(void)
                power_supply_noti(DEVICE_NOTI_BATT_FULL, DEVICE_NOTI_OFF);
                bat_full_noti = 0;
                /* off the full charge state */
-               device_notify(DEVICE_NOTIFIER_FULLBAT, (void *)false);
+               device_notify(DEVICE_NOTIFIER_FULLBAT, (void *)&bat_full_noti);
        }
        if (battery.charge_full && bat_full_noti == 0) {
                power_supply_noti(DEVICE_NOTI_BATT_FULL, DEVICE_NOTI_ON);
@@ -338,7 +340,7 @@ static void noti_batt_full(void)
                else
                        _I("block LCD");
                /* on the full charge state */
-               device_notify(DEVICE_NOTIFIER_FULLBAT, (void *)true);
+               device_notify(DEVICE_NOTIFIER_FULLBAT, (void *)&bat_full_noti);
        }
 }
 
@@ -393,11 +395,11 @@ static void update_present(enum battery_noti_status status)
        pm_change_internal(INTERNAL_LOCK_POPUP, LCD_NORMAL);
        if (status == DEVICE_NOTI_ON) {
                present = PRESENT_ABNORMAL;
-               device_notify(DEVICE_NOTIFIER_BATTERY_PRESENT, (void *)PRESENT_ABNORMAL);
+               device_notify(DEVICE_NOTIFIER_BATTERY_PRESENT, (void *)&present);
                pm_lock_internal(INTERNAL_LOCK_POPUP, LCD_DIM, STAY_CUR_STATE, 0);
        } else {
                present = PRESENT_NORMAL;
-               device_notify(DEVICE_NOTIFIER_BATTERY_PRESENT, (void *)PRESENT_NORMAL);
+               device_notify(DEVICE_NOTIFIER_BATTERY_PRESENT, (void *)&present);
                pm_unlock_internal(INTERNAL_LOCK_POPUP, LCD_DIM, PM_SLEEP_MARGIN);
        }
        changed_battery_cf(present);
@@ -406,6 +408,7 @@ static void update_present(enum battery_noti_status status)
 static void update_health(enum battery_noti_status status)
 {
        static int old = DEVICE_NOTI_OFF;
+       int value;
 
        if (old == status)
                return;
@@ -415,14 +418,16 @@ static void update_health(enum battery_noti_status status)
        pm_change_internal(INTERNAL_LOCK_POPUP, LCD_NORMAL);
        if (status == DEVICE_NOTI_ON) {
                _I("popup - Battery health status is not good");
-               device_notify(DEVICE_NOTIFIER_BATTERY_HEALTH, (void *)HEALTH_BAD);
+               value = HEALTH_BAD;
+               device_notify(DEVICE_NOTIFIER_BATTERY_HEALTH, (void *)&value);
                pm_lock_internal(INTERNAL_LOCK_POPUP, LCD_DIM, STAY_CUR_STATE, 0);
                if (battery.temp == TEMP_LOW)
                        battery_charge_err_low_act(NULL);
                else if (battery.temp == TEMP_HIGH)
                        battery_charge_err_high_act(NULL);
        } else {
-               device_notify(DEVICE_NOTIFIER_BATTERY_HEALTH, (void *)HEALTH_GOOD);
+               value = HEALTH_GOOD;
+               device_notify(DEVICE_NOTIFIER_BATTERY_HEALTH, (void *)&value);
                pm_unlock_internal(INTERNAL_LOCK_POPUP, LCD_DIM, PM_SLEEP_MARGIN);
                health_status_broadcast();
                abnormal_popup_timer_init();
@@ -432,6 +437,7 @@ static void update_health(enum battery_noti_status status)
 static void update_ovp(enum battery_noti_status status)
 {
        static int old = DEVICE_NOTI_OFF;
+       int value;
 
        if (old == status)
                return;
@@ -439,9 +445,10 @@ static void update_ovp(enum battery_noti_status status)
        old = status;
        pm_change_internal(INTERNAL_LOCK_POPUP, LCD_NORMAL);
        if (status == DEVICE_NOTI_ON)
-               device_notify(DEVICE_NOTIFIER_BATTERY_OVP, (void *)OVP_ABNORMAL);
+               value = OVP_ABNORMAL;
        else
-               device_notify(DEVICE_NOTIFIER_BATTERY_OVP, (void *)OVP_NORMAL);
+               value = OVP_NORMAL;
+       device_notify(DEVICE_NOTIFIER_BATTERY_OVP, (void *)&value);
 }
 
 static void check_battery_status(void)