]> SALOME platform Git repositories - tools/medcoupling.git/commitdiff
Salome HOME
Merge remote branch 'origin/abn/checkDeepEquival' into V7_5_BR
authorvsr <vsr@opencascade.com>
Thu, 18 Dec 2014 14:38:37 +0000 (17:38 +0300)
committervsr <vsr@opencascade.com>
Thu, 18 Dec 2014 14:38:37 +0000 (17:38 +0300)
src/MEDCoupling/MEDCouplingPointSet.cxx
src/MEDCoupling_Swig/MEDCouplingBasicsTest.py

index 92870db593529baf53ffc1b5dbf45841c6da7fad..e3cbda93fe3d8da4024bb09b91a14b6ee5005042 100644 (file)
@@ -1459,7 +1459,7 @@ void MEDCouplingPointSet::checkDeepEquivalWith(const MEDCouplingMesh *other, int
   int oldNbOfNodes=getNumberOfNodes();
   MEDCouplingAutoRefCountObjectPtr<DataArrayInt> da=m->buildPermArrayForMergeNode(prec,oldNbOfNodes,areNodesMerged,newNbOfNodes);
   //mergeNodes
-  if(!areNodesMerged)
+  if(!areNodesMerged && oldNbOfNodes != 0)
     throw INTERP_KERNEL::Exception("checkDeepEquivalWith : Nodes are incompatible ! ");
   const int *pt=std::find_if(da->getConstPointer()+oldNbOfNodes,da->getConstPointer()+da->getNbOfElems(),std::bind2nd(std::greater<int>(),oldNbOfNodes-1));
   if(pt!=da->getConstPointer()+da->getNbOfElems())
index 8a5c0e8f263e5e9c1a4183cccfa5371b887028f2..54cc915ebd8c9d110545f11d8f747dfd17150b30 100644 (file)
@@ -2783,6 +2783,15 @@ class MEDCouplingBasicsTest(unittest.TestCase):
         self.assertRaises(InterpKernelException, m.checkDeepEquivalWith, m2, 2, eps)
         pass
 
+    def testSwig2CheckDeepEquivalWith2(self):
+        eps = 1.0e-8
+        m = MEDCouplingUMesh("tst", 2)
+        m.setCoords(DataArrayDouble([], 0,2))
+        m.setConnectivity(DataArrayInt([]), DataArrayInt([0]))
+        m2 = m.deepCpy()
+        m.checkDeepEquivalWith(m2, 0, eps)  # Should not raise!
+        pass
+
     def testCopyTinyStringsFromOnFields(self):
         m=MEDCouplingDataForTest.build3DSurfTargetMesh_1();
         nbOfCells=m.getNumberOfCells();