summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHyunho Kang <hhstark.kang@samsung.com>2016-03-06 20:48:23 -0800
committerGerrit Code Review <gerrit@review.vlan103.tizen.org>2016-03-06 20:48:23 -0800
commit9c1dd657bf6121fb6d2a694226b66289badd3874 (patch)
tree2c1c0925c3e93e80c28e7a065f235a24974b921d
parent3b9e481b6fdc211e8e1ab2a3bc6a4c8be4b4b799 (diff)
parent102f37fcd69bfc48325ec2ee8726e6042ce8c349 (diff)
downloadnotification-9c1dd657bf6121fb6d2a694226b66289badd3874.tar.gz
notification-9c1dd657bf6121fb6d2a694226b66289badd3874.tar.bz2
notification-9c1dd657bf6121fb6d2a694226b66289badd3874.zip
Merge changes I98408a58,Ia3edffa8 into tizen
* changes: Add dbus permission check logic Fix get noti list bug
-rwxr-xr-xsrc/notification_ipc.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/notification_ipc.c b/src/notification_ipc.c
index d04d647..eef8bf6 100755
--- a/src/notification_ipc.c
+++ b/src/notification_ipc.c
@@ -579,11 +579,14 @@ static int _send_sync_noti(GVariant *body, GDBusMessage **reply, char *cmd)
g_object_unref(msg);
if (!*reply) {
+ ret = NOTIFICATION_ERROR_SERVICE_NOT_READY;
if (err != NULL) {
NOTIFICATION_ERR("No reply. cmd = %s, error = %s", cmd, err->message);
+ if (err->code == G_DBUS_ERROR_ACCESS_DENIED)
+ ret = NOTIFICATION_ERROR_PERMISSION_DENIED;
g_error_free(err);
}
- return NOTIFICATION_ERROR_SERVICE_NOT_READY;
+ return ret;
}
if (g_dbus_message_to_gerror(*reply, &err)) {
@@ -991,6 +994,7 @@ int notification_ipc_request_load_noti_grouping_list(notification_type_e type, i
GVariant *iter_body;
GVariantIter *iter;
notification_h noti;
+ GVariant *noti_body;
result = _dbus_init();
if (result != NOTIFICATION_ERROR_NONE) {
@@ -1007,7 +1011,8 @@ int notification_ipc_request_load_noti_grouping_list(notification_type_e type, i
while (g_variant_iter_loop(iter, "(v)", &iter_body)) {
noti = notification_create(NOTIFICATION_TYPE_NOTI);
- notification_ipc_make_noti_from_gvariant(noti, iter_body);
+ g_variant_get(iter_body, "(v)", &noti_body);
+ notification_ipc_make_noti_from_gvariant(noti, noti_body);
_print_noti(noti);
*list = notification_list_append(*list, noti);
}
@@ -1034,6 +1039,7 @@ int notification_ipc_request_load_noti_detail_list(const char *pkgname,
GVariant *iter_body;
GVariantIter *iter;
notification_h noti;
+ GVariant *noti_body;
result = _dbus_init();
if (result != NOTIFICATION_ERROR_NONE) {
@@ -1050,7 +1056,8 @@ int notification_ipc_request_load_noti_detail_list(const char *pkgname,
while (g_variant_iter_loop(iter, "(v)", &iter_body)) {
noti = notification_create(NOTIFICATION_TYPE_NOTI);
- notification_ipc_make_noti_from_gvariant(noti, iter_body);
+ g_variant_get(iter_body, "(v)", &noti_body);
+ notification_ipc_make_noti_from_gvariant(noti, noti_body);
_print_noti(noti);
*list = notification_list_append(*list, noti);
}