Index: trunk/FACT++/dim/src/did/did.c
===================================================================
--- trunk/FACT++/dim/src/did/did.c	(revision 15282)
+++ trunk/FACT++/dim/src/did/did.c	(revision 18349)
@@ -2341,8 +2341,13 @@
 	buffer->server.pid = vtohl(buffer->server.pid);
 	n_services = buffer->server.n_services;
-
+	/*
+printf("received pid %d, nservices %d\n",buffer->server.pid, n_services);
+	*/
 	if(n_services == 1)
 	  return;
 	strcpy(sname, buffer->server.task);
+	/*
+printf("name = %s\n", sname);
+	*/
 	if(n_services > 1)
 	{
@@ -2410,4 +2415,10 @@
 		}
 		servp->busy = 1;
+		if(strcmp(servp->name, sname))
+		{
+		  strcpy(servp->name,sname);
+		  Force_update = 1;
+		  servp->busy = 3;
+		}
 	}
 	else
@@ -2526,4 +2537,9 @@
 		}
 		server_ptr = &servp->server;
+		if(servp->busy == 3)
+		{
+		  remove_button(servp);
+		  servp->busy = 1;
+		}
 		if(servp->busy == 1)
 		{
