From 3272e8e16749b58d13e72e9a3fcadab16550ea71 Mon Sep 17 00:00:00 2001 From: Alexander Wenzel Date: Wed, 12 Oct 2011 13:51:03 +0200 Subject: Implemented new DLT user library function dlt_get_log_state. --- src/daemon/dlt-daemon.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/daemon/dlt-daemon.c') diff --git a/src/daemon/dlt-daemon.c b/src/daemon/dlt-daemon.c index 0e52d3c..4ab628f 100755 --- a/src/daemon/dlt-daemon.c +++ b/src/daemon/dlt-daemon.c @@ -1016,6 +1016,10 @@ int dlt_daemon_process_client_connect(DltDaemon *daemon, DltDaemonLocal *daemon_ { /* send ringbuffer done in old implementation */ /* nothing to do with shared memory */ + + /* send new log state to all applications */ + daemon->state = 1; + dlt_daemon_user_send_all_log_state(daemon,verbose); } return 0; @@ -1043,6 +1047,13 @@ int dlt_daemon_process_client_messages(DltDaemon *daemon, DltDaemonLocal *daemon daemon_local->client_connections--; } + if(daemon_local->client_connections==0) + { + /* send new log state to all applications */ + daemon->state = 0; + dlt_daemon_user_send_all_log_state(daemon,verbose); + } + if (daemon_local->flags.vflag) { sprintf(str, "Connection to client lost, #connections: %d\n",daemon_local->client_connections); @@ -1389,6 +1400,9 @@ int dlt_daemon_process_user_message_register_application(DltDaemon *daemon, DltD application=dlt_daemon_application_add(daemon,usercontext->apid,usercontext->pid,description,verbose); + /* send log state to new application */ + dlt_daemon_user_send_log_state(daemon,application,verbose); + /* keep not read data in buffer */ if (dlt_receiver_remove(&(daemon_local->receiver),sizeof(DltUserHeader)+sizeof(DltUserControlMsgRegisterApplication)+len)==-1) { -- cgit v1.2.1