return ret;
}
-int _mc_ipc_service_connect(mc_priv_type_e priv_type)
+#ifdef _ON_DEMAND_SOCKET_ACTIVATION
+static int __activate_service(void)
{
int ret = MEDIA_CONTROLLER_ERROR_NONE;
-#ifdef _ON_DEMAND_SOCKET_ACTIVATION
int sockfd = -1;
struct sockaddr_un serv_addr;
- unsigned int retry_count = 0;
-#endif
-
- ret = __make_service_connection(priv_type);
- mc_retvm_if(ret == MEDIA_CONTROLLER_ERROR_NONE, ret, "service is already running!");
- mc_retvm_if(ret == MEDIA_CONTROLLER_ERROR_PERMISSION_DENIED, ret, "Permission deny!");
-
-#ifdef _ON_DEMAND_SOCKET_ACTIVATION
- /* If can't make connection to service, the service activation is needed */
/* Create Socket */
ret = mc_ipc_create_client_socket(MC_TIMEOUT_SEC_5, &sockfd);
close(sockfd);
+ return MEDIA_CONTROLLER_ERROR_NONE;
+}
+#endif
+
+int _mc_ipc_service_connect(mc_priv_type_e priv_type)
+{
+ int ret = MEDIA_CONTROLLER_ERROR_NONE;
+#ifdef _ON_DEMAND_SOCKET_ACTIVATION
+ unsigned int retry_count = 0;
+#endif
+
+ ret = __make_service_connection(priv_type);
+ mc_retvm_if(ret == MEDIA_CONTROLLER_ERROR_NONE, ret, "service is already running!");
+ mc_retvm_if(ret == MEDIA_CONTROLLER_ERROR_PERMISSION_DENIED, ret, "Permission deny!");
+
+#ifdef _ON_DEMAND_SOCKET_ACTIVATION
+ ret = __activate_service();
+ mc_retvm_if(ret != MEDIA_CONTROLLER_ERROR_NONE, ret, "Fail to __activate_service");
+
ret = __make_service_connection(priv_type);
mc_retvm_if(ret == MEDIA_CONTROLLER_ERROR_PERMISSION_DENIED, ret, "Permission deny!");