fix svace issues
[platform/core/pim/contacts-service.git] / server / ctsvc_server_change_subject.c
index fdef853..f73e48b 100644 (file)
@@ -24,6 +24,7 @@
 #include "contacts.h"
 #include "ctsvc_internal.h"
 #include "ctsvc_ipc_define.h"
+#include "ctsvc_ipc_marshal.h"
 #include "ctsvc_server_change_subject.h"
 
 #define CTSVC_SUBSCRIBE_MAX_LEN        1024
@@ -31,7 +32,7 @@
 #ifdef ENABLE_LOG_FEATURE
 static __thread char *__phone_log_chanaged_info = NULL;
 static __thread unsigned int __phone_log_buf_size = 0;
-#endif // ENABLE_LOG_FEATURE
+#endif /* ENABLE_LOG_FEATURE */
 
 static __thread char *__person_changed_info = NULL;
 static __thread unsigned int __person_buf_size = 0;
@@ -39,23 +40,24 @@ static __thread unsigned int __person_buf_size = 0;
 static gboolean __ctsvc_publish_changes_with_data(const char *view_uri, char *data)
 {
        pims_ipc_data_h indata = NULL;
-       if( NULL == data )
+       if (NULL == data)
                return true;
 
        indata = pims_ipc_data_create(0);
-       if (!indata) {
+       if (NULL == indata) {
                CTS_ERR("pims_ipc_data_create error\n");
                return false;
        }
 
-       if (pims_ipc_data_put(indata, data, strlen(data) + 1) != 0) {
-               CTS_ERR("pims_ipc_data_put error\n");
+       if (CONTACTS_ERROR_NONE != ctsvc_ipc_marshal_string(data, indata)) {
+               CTS_ERR("ctsvc_ipc_marshal_string() Fail");
                pims_ipc_data_destroy(indata);
                return false;
        }
 
        if (pims_ipc_svc_publish(CTSVC_IPC_SUBSCRIBE_MODULE, (char*)view_uri, indata) != 0) {
                CTS_ERR("pims_ipc_svc_publish error (%s)\n", view_uri);
+               pims_ipc_data_destroy(indata);
                return false;
        }
 
@@ -69,7 +71,7 @@ void ctsvc_change_subject_publish_changed_info()
        __ctsvc_publish_changes_with_data(_contacts_person._uri, __person_changed_info);
 #ifdef ENABLE_LOG_FEATURE
        __ctsvc_publish_changes_with_data(_contacts_phone_log._uri, __phone_log_chanaged_info);
-#endif // ENABLE_LOG_FEATURE
+#endif /* ENABLE_LOG_FEATURE */
        ctsvc_change_subject_clear_changed_info();
 }
 
@@ -79,7 +81,7 @@ void ctsvc_change_subject_clear_changed_info()
        free(__phone_log_chanaged_info);
        __phone_log_chanaged_info = NULL;
        __phone_log_buf_size = 0;
-#endif // ENABLE_LOG_FEATURE
+#endif /* ENABLE_LOG_FEATURE */
 
        free(__person_changed_info);
        __person_changed_info = NULL;
@@ -90,59 +92,63 @@ void ctsvc_change_subject_clear_changed_info()
 void ctsvc_change_subject_add_changed_phone_log_id(contacts_changed_e type, int id)
 {
        CTS_FN_CALL;
-       int len = 0;
+       int cur_len = 0;
        int info_len = 0;
        char changed_info[30] = {0};
 
-       if (!__phone_log_chanaged_info) {
+       if (NULL == __phone_log_chanaged_info) {
                __phone_log_chanaged_info = (char*)calloc(CTSVC_SUBSCRIBE_MAX_LEN, sizeof(char));
                __phone_log_buf_size = CTSVC_SUBSCRIBE_MAX_LEN;
                __phone_log_chanaged_info[0] = '\0';
        }
 
-       len = snprintf(changed_info, sizeof(changed_info), "%d:%d,", type, id);
-       info_len = strlen(__phone_log_chanaged_info);
-       CTS_DBG("%s(len : %d), %s (crrent_len : %d), max_len : %d",
-               changed_info, len, __phone_log_chanaged_info, info_len, __phone_log_buf_size);
-       if (info_len + len > __phone_log_buf_size) {
-               __phone_log_chanaged_info = realloc(__phone_log_chanaged_info, __phone_log_buf_size * 2);
+       info_len = snprintf(changed_info, sizeof(changed_info), "%d:%d,", type, id);
+       cur_len = strlen(__phone_log_chanaged_info);
+       CTS_DBG("%s(info_len : %d), %s(crrent_len : %d), max_len : %u",
+               changed_info, info_len, __phone_log_chanaged_info, cur_len, __phone_log_buf_size);
+
+       if (__phone_log_buf_size <= (cur_len + info_len)) {
                __phone_log_buf_size *= 2;
+               __phone_log_chanaged_info = realloc(__phone_log_chanaged_info, __phone_log_buf_size);
        }
-       snprintf(__phone_log_chanaged_info + info_len, __phone_log_buf_size - info_len, "%s", changed_info);
+       snprintf(__phone_log_chanaged_info + cur_len, __phone_log_buf_size - cur_len, "%s", changed_info);
        CTS_DBG("%s", __phone_log_chanaged_info);
 }
-#endif // ENABLE_LOG_FEATURE
+#endif /* ENABLE_LOG_FEATURE */
 
 void ctsvc_change_subject_add_changed_person_id(contacts_changed_e type, int id)
 {
        CTS_FN_CALL;
-       int len = 0;
+       int cur_len = 0;
        int info_len = 0;
        char changed_info[30] = {0};
 
-       if (!__person_changed_info) {
+       if (NULL == __person_changed_info) {
                __person_changed_info = (char*)calloc(CTSVC_SUBSCRIBE_MAX_LEN, sizeof(char));
                __person_buf_size = CTSVC_SUBSCRIBE_MAX_LEN;
                __person_changed_info[0] = '\0';
        }
 
-       len = snprintf(changed_info, sizeof(changed_info), "%d:%d,", type, id);
-       info_len = strlen(__person_changed_info);
-       if (info_len + len > __person_buf_size) {
-               __person_changed_info = realloc(__person_changed_info, __person_buf_size * 2);
+       info_len = snprintf(changed_info, sizeof(changed_info), "%d:%d,", type, id);
+       cur_len = strlen(__person_changed_info);
+       CTS_DBG("%s(info_len : %d), %s(crrent_len : %d), max_len : %u",
+               changed_info, info_len, __person_changed_info, cur_len, __person_buf_size);
+
+       if (__person_buf_size <= (cur_len + info_len)) {
                __person_buf_size *= 2;
+               __person_changed_info = realloc(__person_changed_info, __person_buf_size);
        }
-       snprintf(__person_changed_info + info_len, __person_buf_size - info_len, "%s", changed_info);
+       snprintf(__person_changed_info + cur_len, __person_buf_size - cur_len, "%s", changed_info);
 }
 
 void ctsvc_change_subject_publish_setting(const char *setting_id, int value)
 {
        pims_ipc_data_h indata = NULL;
        indata = pims_ipc_data_create(0);
-       RETM_IF(NULL == indata, "pims_ipc_data_create error");
+       RETM_IF(NULL == indata, "pims_ipc_data_create() Fail");
 
-       if (pims_ipc_data_put(indata, (void*)&value, sizeof(int)) != 0) {
-               CTS_ERR("pims_ipc_data_put error");
+       if (CONTACTS_ERROR_NONE != ctsvc_ipc_marshal_int(value, indata)) {
+               CTS_ERR("ctsvc_ipc_marshal_int() Fail");
                pims_ipc_data_destroy(indata);
                return;
        }
@@ -157,10 +163,10 @@ void ctsvc_change_subject_publish_status(contacts_db_status_e status)
 {
        pims_ipc_data_h indata = NULL;
        indata = pims_ipc_data_create(0);
-       RETM_IF(NULL == indata, "pims_ipc_data_create error");
+       RETM_IF(NULL == indata, "pims_ipc_data_create() Fail");
 
-       if (pims_ipc_data_put(indata, (void*)&status, sizeof(int)) != 0) {
-               CTS_ERR("pims_ipc_data_put error");
+       if (CONTACTS_ERROR_NONE != ctsvc_ipc_marshal_int(status, indata)) {
+               CTS_ERR("ctsvc_ipc_marshal_int() Fail");
                pims_ipc_data_destroy(indata);
                return;
        }