diff options
author | Inkyun Kil <inkyun.kil@samsung.com> | 2019-09-26 16:34:36 +0900 |
---|---|---|
committer | Inkyun Kil <inkyun.kil@samsung.com> | 2019-09-26 16:47:13 +0900 |
commit | 674df26fef8b4ead594de7c6679a11197837a31a (patch) | |
tree | 7ab05095192af71552d0f71116f8ecdc376a52dd | |
parent | 1f2504ae5382a70ef04a2e439bb3e9a1bf15dce0 (diff) | |
download | alarm-manager-674df26fef8b4ead594de7c6679a11197837a31a.tar.gz alarm-manager-674df26fef8b4ead594de7c6679a11197837a31a.tar.bz2 alarm-manager-674df26fef8b4ead594de7c6679a11197837a31a.zip |
Handle memory allocation failure
Change-Id: Ifa77c2b3a12828caa2f330ec575a2d02db1f7f3a
Signed-off-by: Inkyun Kil <inkyun.kil@samsung.com>
-rw-r--r-- | alarm-manager.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/alarm-manager.c b/alarm-manager.c index 50180b7..5169c0c 100644 --- a/alarm-manager.c +++ b/alarm-manager.c @@ -1649,8 +1649,14 @@ static void __alarm_send_noti_to_application_reply( g_error_free(error); if (is_existed) { - entry->zombie_mode = true; watch_info = (struct watch_info_t *)calloc(1, sizeof(struct watch_info_t)); + if (watch_info == NULL) { + ALARM_MGR_EXCEPTION_PRINT("Out of memory"); + free(reply_alarm_id); + return; + } + + entry->zombie_mode = true; watch_info->alarm_id = entry->alarm_id; watch_info->watch_id = g_bus_watch_name_on_connection( alarm_context.connection, @@ -1700,6 +1706,11 @@ static void __alarm_send_noti_to_application(const char *app_service_name, alarm_id, service_name); } else { reply_alarm_id = (alarm_id_t *)calloc(1, sizeof(alarm_id_t)); + if (reply_alarm_id == NULL) { + ALARM_MGR_EXCEPTION_PRINT("Out of memory"); + return; + } + *reply_alarm_id = alarm_id; g_dbus_connection_call(alarm_context.connection, service_name, |