Index: source/ariba/utility/bootstrap/modules/periodicbroadcast/PeriodicBroadcast.cpp
===================================================================
--- source/ariba/utility/bootstrap/modules/periodicbroadcast/PeriodicBroadcast.cpp	(revision 5418)
+++ source/ariba/utility/bootstrap/modules/periodicbroadcast/PeriodicBroadcast.cpp	(revision 5420)
@@ -108,10 +108,5 @@
 
 void PeriodicBroadcast::publishService(string name, string info1, string info2, string info3){
-	Service service;
-
-	service.name = name;
-	service.info1 = info1;
-	service.info2 = info2;
-	service.info3 = info3;
+	Service service(name, info1, info2, info3) ;
 
 	boost::mutex::scoped_lock lock( localServicesMutex );
Index: source/ariba/utility/bootstrap/modules/periodicbroadcast/PeriodicBroadcast.h
===================================================================
--- source/ariba/utility/bootstrap/modules/periodicbroadcast/PeriodicBroadcast.h	(revision 5418)
+++ source/ariba/utility/bootstrap/modules/periodicbroadcast/PeriodicBroadcast.h	(revision 5420)
@@ -101,4 +101,9 @@
 		}
 
+		_Service(const string& _name, const string& _info1,
+				const string& _info2, const string& _info3, const time_t& _lastseen = 0)
+			: name(_name), info1(_info1), info2(_info2), info3(_info3), lastseen(_lastseen){
+		}
+
 		_Service(const _Service& rh)
 			: name(rh.name), info1(rh.info1), info2(rh.info2),
@@ -225,9 +230,5 @@
 					if( it != services->end() ) services->erase( it );
 
-					Service s;
-					s.info1 = msg.getInfo1();
-					s.info2 = msg.getInfo2();
-					s.info3 = msg.getInfo3();
-					s.lastseen = time(NULL);
+					Service s( msg.getName(), msg.getInfo1(), msg.getInfo2(), msg.getInfo3(), time(NULL));
 					services->insert( std::make_pair(msg.getName(), s) );
 				}
