From 0a9797f9629af51d58aa6189224c4e79c169c55b Mon Sep 17 00:00:00 2001 From: Michael Davidsaver Date: Thu, 28 Sep 2017 16:48:16 -0500 Subject: [PATCH] detect type change bug --- src/remoteClient/clientContextImpl.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/remoteClient/clientContextImpl.cpp b/src/remoteClient/clientContextImpl.cpp index 80b2b08..c8b4d8d 100644 --- a/src/remoteClient/clientContextImpl.cpp +++ b/src/remoteClient/clientContextImpl.cpp @@ -2001,8 +2001,10 @@ public: // deserialize changedBitSet and data, and overrun bit set changedBitSet->deserialize(payloadBuffer, transport.get()); - if (m_up2datePVStructure && m_up2datePVStructure.get() != pvStructure.get()) + if (m_up2datePVStructure && m_up2datePVStructure.get() != pvStructure.get()) { + assert(pvStructure->getStructure().get()==m_up2datePVStructure->getStructure().get()); // TODO: missing some type change (pvStructure w/ fewer fields) pvStructure->copyUnchecked(*m_up2datePVStructure, *changedBitSet, true); + } pvStructure->deserialize(payloadBuffer, transport.get(), changedBitSet.get()); overrunBitSet->deserialize(payloadBuffer, transport.get());