From: Nikita Kalyazin Date: Thu, 3 Oct 2013 06:19:47 +0000 (+0400) Subject: [PROTO] send MSG_STOP_ACK before everything stops X-Git-Tag: Tizen_SDK_2.3~176 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3dc7f81225fb87f63ff131fad756394f35188a9f;p=platform%2Fcore%2Fsystem%2Fswap-manager.git [PROTO] send MSG_STOP_ACK before everything stops MSG_STOP_ACK is sent right after MSG_STOP received. If an error occurs during stop it is reported via MSG_ERROR. Change-Id: Ia012b4c27bd77a80ea0e939e6c4979ab4c186e81 Signed-off-by: Nikita Kalyazin --- diff --git a/daemon/da_protocol.c b/daemon/da_protocol.c index f6f88ef..2b7783f 100644 --- a/daemon/da_protocol.c +++ b/daemon/da_protocol.c @@ -910,6 +910,13 @@ static int send_reply(struct msg_t *msg) return 0; } +static void write_msg_error(const char *err_str) +{ + struct msg_data_t *err_msg = gen_message_error(err_str); + write_to_buf(err_msg); + free_msg_data(err_msg); +} + int sendACKToHost(enum HostMessageT resp, enum ErrorCode err_code, char *payload, int payload_size) { @@ -1068,9 +1075,9 @@ int host_message_handler(struct msg_t *msg) sendACKToHost(msg->id, ERR_NO, 0, 0); break; case NMSG_STOP: - error_code = stop_all(); - //send ack to host - sendACKToHost(msg->id, error_code, 0, 0); + sendACKToHost(msg->id, ERR_NO, 0, 0); + if (stop_all() != ERR_NO) + write_msg_error("Stop failed"); break; case NMSG_CONFIG: error_code=ERR_NO;