pwoff_cb_data *cb_data = (pwoff_cb_data *)user_data;
void *usr_cb = cb_data->usr_cb;
void *usr_data = cb_data->usr_data;
- char *type_str = NULL;
int val_int = 0;
power_off_cb cb_func = (power_off_cb)usr_cb;
MS_DBG_FENTER();
- if (!parameters) {
- MS_DBG_ERR("Error - The body of message is NULL!");
- return ;
- }
-
- type_str = g_strdup((char *)g_variant_get_type_string(parameters));
- if (!type_str) {
- MS_DBG_ERR("Failed to get the type-string of message");
- return ;
+ if (!parameters || !g_variant_check_format_string(parameters, "(i)", FALSE)) {
+ MS_DBG_ERR("Wrong body msg");
+ return;
}
- if (strcmp(type_str, "(i)") == 0) {
- g_variant_get(parameters, type_str, &val_int);
- MS_DBG_WARN("value[%d]", val_int);
- } else {
- MS_DBG_ERR("current type : %s", type_str);
- }
+ g_variant_get(parameters, "(i)", &val_int);
- if (val_int == 2 || val_int == 3)
+ /* Please refer platform/core/system/deviced/src/power/power-handler.h
+ 0: None
+ 1: Power Off Popup is launched (not supported since Tizen5.5)
+ 2: Poweroff
+ 3: Restart
+ 4: Exit
+ */
+ if (val_int == 2 || val_int == 3) {
MS_DBG_WARN("PREPARE POWER OFF");
-
- if (val_int == 2 || val_int == 3)
cb_func(usr_data);
-
- g_free(type_str);
+ }
}
int ms_sys_set_poweroff_cb(power_off_cb user_callback, void *user_data)