Index: /XIOS/dev/branch_yushan/src/buffer_client.cpp
===================================================================
--- /XIOS/dev/branch_yushan/src/buffer_client.cpp	(revision 1093)
+++ /XIOS/dev/branch_yushan/src/buffer_client.cpp	(revision 1094)
@@ -26,5 +26,5 @@
     buffer[1] = new char[bufferSize];
     retBuffer = new CBufferOut(buffer[current], bufferSize);
-    info(10) << "CClientBuffer: allocated 2 x " << bufferSize << " bytes for server " << serverRank << " with a maximum of " << maxBufferedEvents << " buffered events" << endl;
+    //info(10) << "CClientBuffer: allocated 2 x " << bufferSize << " bytes for server " << serverRank << " with a maximum of " << maxBufferedEvents << " buffered events" << endl;
   }
 
Index: /XIOS/dev/branch_yushan/src/client.cpp
===================================================================
--- /XIOS/dev/branch_yushan/src/client.cpp	(revision 1093)
+++ /XIOS/dev/branch_yushan/src/client.cpp	(revision 1094)
@@ -214,6 +214,6 @@
         MPI_Intercomm_create(contextComm,0,CXios::globalComm,serverLeader,10+globalRank,&contextInterComm) ;
         
-        #pragma omp critical (_output)
-        info(10)<<"Register new Context : "<<id<<endl ;
+        //#pragma omp critical (_output)
+        //info(10)<<"Register new Context : "<<id<<endl ;
                       
 
Index: /XIOS/dev/branch_yushan/src/context_client.cpp
===================================================================
--- /XIOS/dev/branch_yushan/src/context_client.cpp	(revision 1093)
+++ /XIOS/dev/branch_yushan/src/context_client.cpp	(revision 1094)
@@ -324,9 +324,9 @@
      for (itMap = itbMap; itMap != iteMap; ++itMap)
      {
-       report(10) << " Memory report : Context <" << context->getId() << "> : client side : memory used for buffer of each connection to server" << endl
-                  << "  +) To server with rank " << itMap->first << " : " << itMap->second << " bytes " << endl;
+       //report(10) << " Memory report : Context <" << context->getId() << "> : client side : memory used for buffer of each connection to server" << endl
+       //           << "  +) To server with rank " << itMap->first << " : " << itMap->second << " bytes " << endl;
        totalBuf += itMap->second;
      }
-     report(0) << " Memory report : Context <" << context->getId() << "> : client side : total memory used for buffer " << totalBuf << " bytes" << endl;
+     //report(0) << " Memory report : Context <" << context->getId() << "> : client side : total memory used for buffer " << totalBuf << " bytes" << endl;
 
      releaseBuffers();
Index: /XIOS/dev/branch_yushan/src/context_server.cpp
===================================================================
--- /XIOS/dev/branch_yushan/src/context_server.cpp	(revision 1093)
+++ /XIOS/dev/branch_yushan/src/context_server.cpp	(revision 1094)
@@ -221,5 +221,5 @@
     {
       finished=true;
-      info(20)<<"Server Side context <"<<context->getId()<<"> finalized"<<endl;
+      //info(20)<<"Server Side context <"<<context->getId()<<"> finalized"<<endl;
       std::map<int, StdSize>::const_iterator itbMap = mapBufferSize_.begin(),
                                              iteMap = mapBufferSize_.end(), itMap;
@@ -227,10 +227,10 @@
       for (itMap = itbMap; itMap != iteMap; ++itMap)
       {
-        report(10)<< " Memory report : Context <"<<context->getId()<<"> : server side : memory used for buffer of each connection to client" << endl
-                  << "  +) With client of rank " << itMap->first << " : " << itMap->second << " bytes " << endl;
+        //report(10)<< " Memory report : Context <"<<context->getId()<<"> : server side : memory used for buffer of each connection to client" << endl
+        //          << "  +) With client of rank " << itMap->first << " : " << itMap->second << " bytes " << endl;
         totalBuf += itMap->second;
       }
       context->finalize();
-      report(0)<< " Memory report : Context <"<<context->getId()<<"> : server side : total memory used for buffer "<<totalBuf<<" bytes"<<endl;
+      //report(0)<< " Memory report : Context <"<<context->getId()<<"> : server side : total memory used for buffer "<<totalBuf<<" bytes"<<endl;
     }
     else if (event.classId==CContext::GetType()) CContext::dispatchEvent(event);
Index: /XIOS/dev/branch_yushan/src/group_factory.cpp
===================================================================
--- /XIOS/dev/branch_yushan/src/group_factory.cpp	(revision 1093)
+++ /XIOS/dev/branch_yushan/src/group_factory.cpp	(revision 1094)
@@ -4,16 +4,15 @@
 {
    /// ////////////////////// DÃ©finitions ////////////////////// ///
-   StdString CGroupFactory::CurrContext("");
+   StdString *CGroupFactory::CurrContext_ptr = new StdString;
    StdString *CGroupFactory::CurrContext_ptr = new StdString;
 
    void CGroupFactory::SetCurrentContextId(const StdString & context)
-   { 
-      //CGroupFactory::CurrContext = context;
-      *CGroupFactory::CurrContext_ptr = context;
+   {  
+      if(CGroupFactory::CurrContext_ptr == NULL ) CGroupFactory::CurrContext_ptr = new StdString; 
+      CGroupFactory::CurrContext_ptr->assign(context);
    }
 
    StdString & CGroupFactory::GetCurrentContextId(void)
    { 
-      //return (CGroupFactory::CurrContext);
       return (*CGroupFactory::CurrContext_ptr);
    }
Index: /XIOS/dev/branch_yushan/src/group_factory.hpp
===================================================================
--- /XIOS/dev/branch_yushan/src/group_factory.hpp	(revision 1093)
+++ /XIOS/dev/branch_yushan/src/group_factory.hpp	(revision 1094)
@@ -69,5 +69,4 @@
 
          /// PropriÃ©tÃ©s statiques ///
-         //static StdString CurrContext;
          static StdString *CurrContext_ptr;
          #pragma omp threadprivate(CurrContext_ptr)
Index: /XIOS/dev/branch_yushan/src/object_factory.cpp
===================================================================
--- /XIOS/dev/branch_yushan/src/object_factory.cpp	(revision 1093)
+++ /XIOS/dev/branch_yushan/src/object_factory.cpp	(revision 1094)
@@ -5,17 +5,15 @@
    /// ////////////////////// DÃ©finitions ////////////////////// ///
 
-   //StdString CObjectFactory::CurrContext("");
-	 StdString *CObjectFactory::CurrContext_ptr = new StdString;
+   StdString *CObjectFactory::CurrContext_ptr = new StdString;
 
    void CObjectFactory::SetCurrentContextId(const StdString & context)
-   { 
-   	 //CObjectFactory::CurrContext = context; 
-   	 *CObjectFactory::CurrContext_ptr = context; 
+   {
+     if(CObjectFactory::CurrContext_ptr == NULL ) CObjectFactory::CurrContext_ptr = new StdString;
+     CObjectFactory::CurrContext_ptr->assign(context); 
    }
 
    StdString & CObjectFactory::GetCurrentContextId(void)
    { 
-   	 //return (CObjectFactory::CurrContext); 
-   	 return (*CObjectFactory::CurrContext_ptr); 
+     return (*CObjectFactory::CurrContext_ptr); 
    }
 
Index: /XIOS/dev/branch_yushan/src/object_factory.hpp
===================================================================
--- /XIOS/dev/branch_yushan/src/object_factory.hpp	(revision 1093)
+++ /XIOS/dev/branch_yushan/src/object_factory.hpp	(revision 1094)
@@ -59,5 +59,4 @@
 
          /// PropriÃ©tÃ©s statiques ///
-         //static StdString CurrContext;
          static StdString *CurrContext_ptr;
          #pragma omp threadprivate(CurrContext_ptr)
Index: /XIOS/dev/branch_yushan/src/test/test_omp.f90
===================================================================
--- /XIOS/dev/branch_yushan/src/test/test_omp.f90	(revision 1093)
+++ /XIOS/dev/branch_yushan/src/test/test_omp.f90	(revision 1094)
@@ -88,53 +88,17 @@
     print*, "xios_context_initialize OK", rank, size
 
-    CALL xios_get_handle("test",ctx_hdl)
-    CALL xios_set_current_context(ctx_hdl)
-  
-  
-    CALL xios_get_calendar_type(calendar_type)
-    print*, "xios_get_calendar_type OK", rank, size
-
-    CALL xios_set_axis_attr("axis_A",n_glo=llm ,value=lval) ;
-    CALL xios_set_domain_attr("domain_A",ni_glo=ni_glo, nj_glo=nj_glo, ibegin=ibegin, ni=ni,jbegin=jbegin,nj=nj,type='curvilinear')
-    CALL xios_set_domain_attr("domain_A",data_dim=2, data_ibegin=-1, data_ni=ni+2, data_jbegin=-2, data_nj=nj+4)
-    CALL xios_set_domain_attr("domain_A",lonvalue_2D=lon,latvalue_2D=lat)
-    CALL xios_set_fieldgroup_attr("field_definition",enabled=.TRUE.)
-    print*, "test block OK", rank, size
-
-    CALL xios_get_handle("field_definition",fieldgroup_hdl)
-    CALL xios_add_child(fieldgroup_hdl,field_hdl,"field_B")
-    CALL xios_set_attr(field_hdl,field_ref="field_A",name="field_B")
-    
-    CALL xios_get_handle("output",file_hdl)
-    CALL xios_add_child(file_hdl,field_hdl)
-    CALL xios_set_attr(field_hdl,field_ref="field_A_zoom",name="field_C")
-    print*, "test block 2 OK", rank, size
-
-!     dtime%second = 3600
-!     CALL xios_set_timestep(dtime)
-!     print*, "xios_set_timestep OK", rank, size
-
-    ! The calendar is created as soon as the calendar type is defined. This way
-    ! calendar operations can be used before the context definition is closed
-!     CALL xios_get_time_origin(date)
-!     PRINT *, "--> year length = ", xios_get_year_length_in_seconds(date%year)
-!     PRINT *, "--> day length = ", xios_get_day_length_in_seconds()
-!     CALL xios_date_convert_to_string(date, date_str)
-!     PRINT *, "time_origin = ", date_str
-!     PRINT *, "xios_date_get_second_of_year(time_origin) = ", xios_date_get_second_of_year(date)
-!     PRINT *, "xios_date_get_day_of_year(time_origin) = ", xios_date_get_day_of_year(date)
-!     PRINT *, "xios_date_get_fraction_of_year(time_origin) = ", xios_date_get_fraction_of_year(date)
-!     PRINT *, "xios_date_get_second_of_day(time_origin) = ", xios_date_get_second_of_day(date)
-!     PRINT *, "xios_date_get_fraction_of_day(time_origin) = ", xios_date_get_fraction_of_day(date)
-!     dtime%timestep = 1
-!     dtime = 0.5 * dtime
-!     CALL xios_duration_convert_to_string(dtime, dtime_str)
-!     PRINT *, "duration = ", dtime_str
-!     date = date + 3 * (dtime + dtime)
-!     CALL xios_date_convert_to_string(date, date_str)
-!     PRINT *, "date = time_origin + 3 * (duration + duration) = ", date_str
-!     PRINT *, "xios_date_convert_to_seconds(date) = ", xios_date_convert_to_seconds(date)
-!     PRINT *, "xios_date_convert_to_seconds(date - 2.5h) = ", xios_date_convert_to_seconds(date - 2.5 * xios_hour)
-
+!     CALL xios_get_handle("test",ctx_hdl)
+!     CALL xios_set_current_context(ctx_hdl)
+  
+  
+!     CALL xios_get_calendar_type(calendar_type)
+!     print*, "xios_get_calendar_type OK", rank, size
+
+!     CALL xios_set_axis_attr("axis_A",n_glo=llm ,value=lval) ;
+!     CALL xios_set_domain_attr("domain_A",ni_glo=ni_glo, nj_glo=nj_glo, ibegin=ibegin, ni=ni,jbegin=jbegin,nj=nj,type='curvilinear')
+!     CALL xios_set_domain_attr("domain_A",data_dim=2, data_ibegin=-1, data_ni=ni+2, data_jbegin=-2, data_nj=nj+4)
+!     CALL xios_set_domain_attr("domain_A",lonvalue_2D=lon,latvalue_2D=lat)
+!     CALL xios_set_fieldgroup_attr("field_definition",enabled=.TRUE.)
+!     print*, "test block OK", rank, size
 
     CALL xios_context_finalize()
@@ -142,5 +106,5 @@
 
     !$omp master
-    call MPI_Barrier(comm)
+    !call MPI_Barrier(comm)
     CALL MPI_COMM_FREE(comm, ierr)
     !$omp end master
