[Mobies-commit] [commit] r4392 - UDM/trunk/src/UdmDom
ksmyth at svn.isis.vanderbilt.edu
ksmyth at svn.isis.vanderbilt.edu
Fri Oct 13 09:38:57 CDT 2017
Author: ksmyth
Date: Fri Oct 13 09:38:56 2017
New Revision: 4392
Log:
Fix unintentional copy/assignment that may lead to memory leaks
Modified:
UDM/trunk/src/UdmDom/UdmDom.cpp
Modified: UDM/trunk/src/UdmDom/UdmDom.cpp
==============================================================================
--- UDM/trunk/src/UdmDom/UdmDom.cpp Fri Oct 13 09:38:52 2017 (r4391)
+++ UDM/trunk/src/UdmDom/UdmDom.cpp Fri Oct 13 09:38:56 2017 (r4392)
@@ -737,7 +737,12 @@
const DataNetwork * mydn;
- public:
+ public:
+#if _MSC_VER >= 1800
+ DomObject(const DomObject&) = delete;
+ DomObject& operator=(const DomObject&) = delete;
+#endif
+
DOMElement *dom_element;
@@ -2371,7 +2376,7 @@
//DOMString oname = subtype ? "derived" : "instances";
const XMLCh *oname = subtype ? gXML__derived : gXML__instances;
- DomObject peer = *const_cast<DomObject *>((const DomObject*)archetype);
+ DomObject& peer = *const_cast<DomObject *>((const DomObject*)archetype);
const XMLCh *peerid = peer.GetID();
@@ -2774,7 +2779,7 @@
{
UDM_ASSERT(dynamic_cast<DomObject*>(*i));
UDM_ASSERT(static_cast<DomObject *>(*i)->__getdn() == __getdn());
- DomObject peer = *static_cast<DomObject *>(*i);
+ DomObject& peer = *static_cast<DomObject *>(*i);
const XMLCh *peerid = peer.GetID();
if(aa != NULL)
@@ -2927,7 +2932,7 @@
set<Object> new_vect; //this will contain the vector of corresponding objects
for(vector<ObjectImpl* >::const_iterator k = nvect.begin(); k != nvect.end(); k++)
{
- DomObject peer = *static_cast<DomObject *>(*k);
+ DomObject& peer = *static_cast<DomObject *>(*k);
Udm::Object peer_o_inst = peer.findInstanceIn((DomObject*)(*oset_i));
if (peer_o_inst) new_vect.insert(peer_o_inst);
}
@@ -2988,7 +2993,7 @@
set<Object> new_vect; //this will contain the vector of corresponding objects
for(vector<ObjectImpl* >::const_iterator k = nvect.begin(); k != nvect.end(); k++)
{
- DomObject peer = *static_cast<DomObject *>(*k);
+ DomObject& peer = *static_cast<DomObject *>(*k);
Udm::Object peer_o_inst = peer.findInstanceIn((DomObject*)(*oset_i));
if (peer_o_inst)new_vect.insert(peer_o_inst);
}
More information about the Mobies-commit
mailing list