ret = vc_db_initialize_for_daemon();
if (0 != ret) {
SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to initialize DB : %d", ret);
+ if (TRUE != vcd_finalize()) {
+ SLOG(LOG_ERROR, TAG_VCD, "[Server Error] Fail to finalize");
+ }
return ret;
}
ret = vcd_engine_agent_init();
if (0 != ret) {
SLOG(LOG_ERROR, TAG_VCD, "[Server ERROR] Fail to engine agent initialize : result(%d)", ret);
+ if (TRUE != vcd_finalize()) {
+ SLOG(LOG_ERROR, TAG_VCD, "[Server Error] Fail to finalize");
+ }
return ret;
}
if (0 != vcd_recorder_create(__server_recorder_callback, __server_recorder_interrupt_callback)) {
SLOG(LOG_ERROR, TAG_VCD, "[Server ERROR] Fail to create recorder");
+ if (TRUE != vcd_finalize()) {
+ SLOG(LOG_ERROR, TAG_VCD, "[Server Error] Fail to finalize");
+ }
return VCD_ERROR_OPERATION_FAILED;
}
/* Load engine */
if (0 != vcd_engine_agent_load_current_engine(callback)) {
SLOG(LOG_ERROR, TAG_VCD, "[Server ERROR] Fail to load current engine");
+ if (TRUE != vcd_finalize()) {
+ SLOG(LOG_ERROR, TAG_VCD, "[Server Error] Fail to finalize");
+ }
return VCD_ERROR_OPERATION_FAILED;
}
// if (TRUE == __is_default_engine()) {
/* Open dbus connection */
if (0 != vcd_dbus_open_connection()) {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to open connection");
+ SLOG(LOG_ERROR, TAG_VCD, "[Server ERROR] Fail to open connection");
+ if (TRUE != vcd_finalize()) {
+ SLOG(LOG_ERROR, TAG_VCD, "[Server Error] Fail to finalize");
+ }
return VCD_ERROR_OPERATION_FAILED;
}
// }
}
vcd_state_e state = vcd_config_get_service_state();
- if (VCD_STATE_READY != state) {
+ if (VCD_STATE_NONE != state && VCD_STATE_READY != state) {
if (VCD_STATE_RECORDING == state) {
vcd_recorder_stop();
}
SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to finalize DB : %d", ret);
}
- vcd_config_set_service_state(VCD_STATE_NONE);
- vcdc_send_service_state(VCD_STATE_NONE);
+ if (VCD_STATE_NONE != state) {
+ vcd_config_set_service_state(VCD_STATE_NONE);
+ vcdc_send_service_state(VCD_STATE_NONE);
+ }
/* Open dbus connection */
if (0 != vcd_dbus_close_connection()) {