From 8d48dc215cb987e915e7677439ed9091f29c5131 Mon Sep 17 00:00:00 2001
From: Andrea Michelotti <amichelotti@lnf.infn.it>
Date: Mon, 24 Oct 2022 18:26:50 +0200
Subject: [PATCH] centos7 link problem trials

---
 chaos/common/CMakeLists.txt        | 16 ++++++++--------
 chaos/common/data/CDataWrapper.cpp |  7 ++++---
 2 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/chaos/common/CMakeLists.txt b/chaos/common/CMakeLists.txt
index a01966468..f54f82102 100644
--- a/chaos/common/CMakeLists.txt
+++ b/chaos/common/CMakeLists.txt
@@ -644,13 +644,7 @@ ENDIF()
 
 
 
-IF(CHAOS_EPICS_SUPPORT)
-  foreach(elib libpvData.a libCom.a)
-      #${CMAKE_INSTALL_PREFIX}/lib/linux-x86_64/${elib}
-      SET(BUILD_LIBRARY ${BUILD_LIBRARY} ${elib})
-  endforeach()
-   MESG("Adding Epics support ${BUILD_LIBRARY}")
-ENDIF()
+
 
 IF(WIN32)
 MESSAGE("WIN32 CMAKE_INSTALL_PREFIX" ${CMAKE_INSTALL_PREFIX} )
@@ -672,7 +666,13 @@ ENDIF(WIN32)
 ENDIF()
 
 
-
+IF(CHAOS_EPICS_SUPPORT)
+  foreach(elib libCom.a libpvData.a )
+      #${CMAKE_INSTALL_PREFIX}/lib/linux-x86_64/${elib}
+      SET(BUILD_LIBRARY ${elib} ${BUILD_LIBRARY})
+  endforeach()
+   MESG("Adding Epics support ${BUILD_LIBRARY}")
+ENDIF()
 IF (BUILD_FORCE_STATIC  )
   ADD_LIBRARY(${PROJECT_NAME} STATIC ${common_lib_src})
   TARGET_LINK_LIBRARIES(${PROJECT_NAME} z lz4 ${FrameworkLib} ${BUILD_LIBRARY})
diff --git a/chaos/common/data/CDataWrapper.cpp b/chaos/common/data/CDataWrapper.cpp
index a42f49b8e..b49303644 100644
--- a/chaos/common/data/CDataWrapper.cpp
+++ b/chaos/common/data/CDataWrapper.cpp
@@ -1831,21 +1831,22 @@ void CDataWrapper::decodePVField(epics::pvData::PVFieldConstPtr pv_field){
       case epics::pvData::structure: {
         LDBG_ <<"\t"<< "Adding Structure " << fname;       
         CDataWrapper                        cs;
+        pvd::PVStructure::const_shared_pointer tmp((pvd::PVStructure*)pv_field.get());
 
-        cs.setSerializedData((pvd::PVStructure*)pv_field.get());
+        cs.setSerializedData(tmp);
         addCSDataValue(fname, cs);
         break;
       }
       case epics::pvData::structureArray: {
         LDBG_ <<"\t"<< "Adding Structure Array " << fname;
-        pvd::PVStructureArray::const_shared_pointer tmp((pvd::PVStructureArray*)pv_field.get());// = ptr->getSubField<pvd::PVStructureArray>(fname);
+        pvd::PVStructureArray::const_shared_pointer tmp((pvd::PVStructureArray*)pv_field.get());
       if (tmp->getLength() != 0){
         pvd::PVStructureArray::const_svector data = tmp->view();
         std::vector<CDataWrapper> vc;
 
         for (pvd::PVStructureArray::const_svector::const_iterator it = data.begin();it != data.end(); ++it ){
             CDataWrapper                        cs;
-            cs.setSerializedData((*it).get());
+            cs.setSerializedData((*it));
             vc.push_back(cs);
         }
         append(fname,vc);
-- 
GitLab