return;
}
+#define CHECK_APPLICATION_EVENT_ERROR(result, function_name) \
+ if (PKGMGR_R_OK > result) { \
+ StopAppInfoEventListener(); \
+ LogAndReportError( \
+ PlatformResult(ErrorCode::UNKNOWN_ERR, "Failed to register listener."), out, \
+ ("Function %s failed: %s (%d)", function_name, get_error_message(result), result)); \
+ return; \
+ }
+
g_application_list_changed_broker.AddApplicationInstance(&instance_);
- pkgmgr_client_set_status_type(pkgmgr_client_handle_, PACKAGE_MANAGER_STATUS_TYPE_INSTALL |
- PACKAGE_MANAGER_STATUS_TYPE_UPGRADE);
- pkgmgr_client_set_status_type(pkgmgr_client_uninstall_handle_,
- PACKAGE_MANAGER_STATUS_TYPE_UNINSTALL);
+ int result = pkgmgr_client_set_status_type(
+ pkgmgr_client_handle_,
+ PACKAGE_MANAGER_STATUS_TYPE_INSTALL | PACKAGE_MANAGER_STATUS_TYPE_UPGRADE);
+ CHECK_APPLICATION_EVENT_ERROR(result, "pkgmgr_client_set_status_type")
+
+ result = pkgmgr_client_set_status_type(pkgmgr_client_uninstall_handle_,
+ PACKAGE_MANAGER_STATUS_TYPE_UNINSTALL);
+ CHECK_APPLICATION_EVENT_ERROR(result, "pkgmgr_client_set_status_type")
+
+ result = pkgmgr_client_listen_status(pkgmgr_client_handle_,
+ ApplicationListChangedBroker::ClientStatusListener,
+ &g_application_list_changed_broker);
+ CHECK_APPLICATION_EVENT_ERROR(result, "pkgmgr_client_listen_status")
- pkgmgr_client_listen_status(pkgmgr_client_handle_,
- ApplicationListChangedBroker::ClientStatusListener,
- &g_application_list_changed_broker);
- pkgmgr_client_listen_status(pkgmgr_client_uninstall_handle_,
- ApplicationListChangedBroker::AppUninstallListener,
- &g_application_list_changed_broker);
+ result = pkgmgr_client_listen_status(pkgmgr_client_uninstall_handle_,
+ ApplicationListChangedBroker::AppUninstallListener,
+ &g_application_list_changed_broker);
+ CHECK_APPLICATION_EVENT_ERROR(result, "pkgmgr_client_listen_status")
+#undef CHECK_APPLICATION_EVENT_ERROR
} else {
LoggerD("Broker callback is already registered.");
}
int value_size = value_array.size();
std::unique_ptr<char[]> value_data(new char[value_size]);
for (int i = 0; i < value_size; ++i) {
- value_data[i] = (int) value_array[i].get<double>();
+ value_data[i] = (int)value_array[i].get<double>();
}
struct Data {
std::unique_ptr<char[]> data_ptr{new char[data_size]};
for (std::size_t i = 0; i < data_size; ++i) {
- data_ptr[i] = (int) binary_data[i].get<double>();
+ data_ptr[i] = (int)binary_data[i].get<double>();
}
int ntv_ret = bt_hdp_send_data(channel, data_ptr.get(), data_size);
std::unique_ptr<char[]> data_ptr{new char[data_size]};
for (std::size_t i = 0; i < data_size; ++i) {
- data_ptr[i] = (int) binary_data[i].get<double>();
+ data_ptr[i] = (int)binary_data[i].get<double>();
}
if (kBluetoothError == bt_socket_send_data(socket, data_ptr.get(), data_size)) {
int id() const {
return id_;
}
+
private:
int id_;
};
LoggerW("%s", get_error_message(ret));
}
out["status"] = picojson::value("completed");
+ out["fullPath"] =
+ picojson::value(common::FilesystemProvider::Create().GetVirtualPath(fullPath));
}
-
out["callbackId"] = picojson::value(static_cast<double>(callback_id));
- out["fullPath"] = picojson::value(common::FilesystemProvider::Create().GetVirtualPath(fullPath));
-
Instance::PostMessage(downCbPtr->instance, picojson::value(out).serialize().c_str());
// downCbPtr is freed in destructor, it prevent from crash if OnFinished state
// was called after OnCanceled or OnFailed
system_info_get_platform_bool("http://tizen.org/feature/network.telephony", &cell_support);
system_info_get_platform_bool("http://tizen.org/feature/network.wifi", &wifi_support);
+#define CHECK_CONNECTION_ERROR(ret) \
+ if (CONNECTION_ERROR_NONE != ret) { \
+ LogAndReportError( \
+ common::PlatformResult(common::ErrorCode::UNKNOWN_ERR, "Connection problem occured"), \
+ &out, ("Connection type is disconnected")); \
+ return; \
+ }
+
connection_h connection = nullptr;
- connection_create(&connection);
+ ret = connection_create(&connection);
+ CHECK_CONNECTION_ERROR(ret)
SCOPE_EXIT {
connection_destroy(connection);
};
connection_cellular_state_e cell_state = CONNECTION_CELLULAR_STATE_OUT_OF_SERVICE;
connection_wifi_state_e wifi_state = CONNECTION_WIFI_STATE_DEACTIVATED;
- connection_get_cellular_state(connection, &cell_state);
- connection_get_wifi_state(connection, &wifi_state);
+ ret = connection_get_cellular_state(connection, &cell_state);
+ CHECK_CONNECTION_ERROR(ret)
+ ret = connection_get_wifi_state(connection, &wifi_state);
+ CHECK_CONNECTION_ERROR(ret)
connection_type_e connection_type = CONNECTION_TYPE_DISCONNECTED;
- connection_get_type(connection, &connection_type);
+ ret = connection_get_type(connection, &connection_type);
+ CHECK_CONNECTION_ERROR(ret)
+
+#undef CHECK_CONNECTION_ERROR
if (CONNECTION_TYPE_DISCONNECTED == connection_type) {
LogAndReportError(
gchar* ch_uri = g_base64_encode(exif_data->data, exif_data->size);
exif_data_unref(exif_data);
std::string base64 = "data:image/" + ext + ";base64," + ch_uri;
+ g_free(ch_uri);
std::pair<std::string, picojson::value> pair;
pair = std::make_pair("src", picojson::value(base64));
std::unique_ptr<unsigned char, CArrayDeleter> exif_output_data;
unsigned int exif_output_size = 0;
- if (cur_marker != JPEG_MARKER_SOI && cur_marker != JPEG_MARKER_EOI) {
+ if (JPEG_MARKER_SOI != cur_marker && JPEG_MARKER_EOI != cur_marker) {
unsigned short section_size = 2;
- if (JPEG_MARKER_APP1 && cur->exif_data) {
+ if (JPEG_MARKER_APP1 == cur_marker && cur->exif_data) {
unsigned char* tmp = NULL;
exif_data_save_data(cur->exif_data, &tmp, &exif_output_size);
if (!tmp || 0 == exif_output_size) {
ScopeLogger();
email_mail_data_t* mail_data = NULL;
email_mail_data_t* mail_data_final = NULL;
+ email_mailbox_t* mailbox_data = NULL;
+ email_account_t* account = NULL;
+
+ SCOPE_EXIT {
+ if (mail_data_final) {
+ email_free_mail_data(&mail_data_final, 1);
+ }
+ if (mail_data) {
+ email_free_mail_data(&mail_data, 1);
+ }
+ if (mailbox_data) {
+ email_free_mailbox(&mailbox_data, 1);
+ }
+ if (account) {
+ email_free_account(&account, 1);
+ }
+ };
+
int err = EMAIL_ERROR_NONE;
PlatformResult ret = Message::convertPlatformEmail(message, &mail_data);
mail_data->account_id = account_id;
// Adding "from" email address
- email_account_t* account = NULL;
err = email_get_account(account_id, GET_FULL_DATA_WITHOUT_PASSWORD, &account);
if (EMAIL_ERROR_NONE != err) {
- int ntv_ret = email_free_mail_data(&mail_data, 1);
- if (EMAIL_ERROR_NONE != ntv_ret) {
- LoggerE("Failed to free mail data memory %d (%s)", ntv_ret, get_error_message(ntv_ret));
- }
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR, "Cannot retrieve email account information",
("email_get_account error: %d (%s)", err, get_error_message(err)));
}
ss >> address_from;
mail_data->full_address_from = strdup(address_from.c_str());
LoggerE("FROM %s", mail_data->full_address_from);
- err = email_free_account(&account, 1);
- if (EMAIL_ERROR_NONE != err) {
- LoggerE("Failed to free account data memory");
- }
+
// Setting mailbox id
- email_mailbox_t* mailbox_data = NULL;
err = email_get_mailbox_by_mailbox_type(account_id, mailbox_type, &mailbox_data);
if (EMAIL_ERROR_NONE != err) {
- int ntv_ret = email_free_mail_data(&mail_data, 1);
- if (EMAIL_ERROR_NONE != ntv_ret) {
- LoggerE("Failed to free mail data memory: %d (%s)", ntv_ret, get_error_message(ntv_ret));
- }
return LogAndCreateResult(
ErrorCode::UNKNOWN_ERR, "Cannot retrieve draft mailbox",
("email_get_mailbox_by_mailbox_type error: %d (%s)", err, get_error_message(err)));
// adding email without attachments
err = email_add_mail(mail_data, NULL, 0, NULL, 0);
if (EMAIL_ERROR_NONE != err) {
- int ntv_ret = email_free_mail_data(&mail_data, 1);
- if (EMAIL_ERROR_NONE != ntv_ret) {
- LoggerE("Failed to free mail data memory: %d (%s)", ntv_ret, get_error_message(ntv_ret));
- }
- ntv_ret = email_free_mailbox(&mailbox_data, 1);
- if (EMAIL_ERROR_NONE != ntv_ret) {
- LoggerE("Failed to destroy mailbox: %d (%s)", ntv_ret, get_error_message(ntv_ret));
- }
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR, "Couldn't add message to draft mailbox",
("email_add_mail error: %d (%s)", err, get_error_message(err)));
} else {
if (message->getHasAttachment()) {
ret = Message::addEmailAttachments(message);
if (ret.IsError()) {
- int ntv_ret = email_free_mail_data(&mail_data, 1);
- if (EMAIL_ERROR_NONE != ntv_ret) {
- LoggerE("Failed to free mail data memory: %d (%s)", ntv_ret, get_error_message(ntv_ret));
- }
return ret;
}
}
err = email_get_mail_data(message->getId(), &mail_data_final);
if (EMAIL_ERROR_NONE != err) {
- int ntv_ret = email_free_mail_data(&mail_data, 1);
- if (EMAIL_ERROR_NONE != ntv_ret) {
- LoggerE("Failed to free mail data memory: %d (%s)", ntv_ret, get_error_message(ntv_ret));
- }
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR, "Couldn't retrieve added mail data",
("email_get_mail_data error: %d (%s)", err, get_error_message(err)));
}
ret = message->updateEmailMessage(*mail_data_final);
if (ret.IsError()) {
- int ntv_ret = email_free_mail_data(&mail_data, 1);
- if (EMAIL_ERROR_NONE != ntv_ret) {
- LoggerE("Failed to free mail data memory: %d (%s)", ntv_ret, get_error_message(ntv_ret));
- }
return ret;
}
- err = email_free_mail_data(&mail_data_final, 1);
- if (EMAIL_ERROR_NONE != err) {
- LoggerE("Failed to free mail data final memory: %d (%s)", err, get_error_message(err));
- }
-
- err = email_free_mail_data(&mail_data, 1);
- if (EMAIL_ERROR_NONE != err) {
- LoggerE("Failed to free mail data memory: %d (%s)", err, get_error_message(err));
- }
-
- err = email_free_mailbox(&mailbox_data, 1);
- if (EMAIL_ERROR_NONE != err) {
- LoggerE("Failed to destroy mailbox: %d (%s)", err, get_error_message(err));
- }
return PlatformResult(ErrorCode::NO_ERROR);
}
PlatformResult saveToTempFile(const std::string& data, std::string* file_name) {
ScopeLogger();
- char buf[] = "XXXXXX";
+ char buf[] = "/tmp/XXXXXX";
mode_t mask = umask(S_IWGRP | S_IWOTH);
- mkstemp(buf); // Just generate unique name
+ int file_descriptor = mkstemp(buf);
+ // Generate unique name and open the file descriptor
+ if (-1 == file_descriptor) {
+ return LogAndCreateResult(ErrorCode::UNKNOWN_ERR, "Temp file creation failed");
+ }
- std::string tmp_name = std::string("/tmp/") + buf;
+ std::string tmp_name = buf;
mode_t old_mask = umask(mask);
- FILE* file = fopen(tmp_name.c_str(), "w");
+ FILE* file = fdopen(file_descriptor, "w+");
umask(old_mask);
if (NULL == file) {
ScopeLogger();
}
-MessagingManager::MessagingManager(MessagingInstance& instance) : instance_(instance) {
+MessagingManager::MessagingManager(MessagingInstance& instance)
+ : m_msg_handle(nullptr), instance_(instance) {
ScopeLogger();
int ret = msg_open_msg_handle(&m_msg_handle);
if (ret != MSG_SUCCESS) {
};
for (size_t i = 0; i < v_cmd_size; i++) {
- cmd[i] = (int) v_cmd[i].get<double>();
+ cmd[i] = (int)v_cmd[i].get<double>();
}
int length = 0;