]> OCCT Git - occt.git/commitdiff
0033436: Data Exchange, DE_Wrapper - DEXCAFCascade_ConfigurationNode::BuildProvider... CR33397_1_DE_fix
authoroan <oan@opencascade.com>
Thu, 27 Jul 2023 01:33:58 +0000 (02:33 +0100)
committeroan <oan@opencascade.com>
Fri, 28 Jul 2023 09:22:05 +0000 (10:22 +0100)
Pass pointer to DEXCAFCascade_ConfigurationNode to DEXCAFCascade_Provider;
Remove forcible manual reset of Provider's node in DE_Wrapper::FindProvider() to verify that all specializations of configuration node work properly without necessity of workarounds.

src/DE/DE_Wrapper.cxx
src/DEXCAFCascade/DEXCAFCascade_ConfigurationNode.cxx

index 793c27b7a810519762943d34499203c375e3a626..007ab4bc2d3aa78e60f74aff68ac18e5d429df3f 100644 (file)
@@ -538,7 +538,6 @@ Standard_Boolean DE_Wrapper::FindProvider(const TCollection_AsciiString& thePath
       {
         theProvider = aNode->BuildProvider();
         aNode->GlobalParameters = GlobalParameters;
-        theProvider->SetNode(aNode);
         return Standard_True;
       }
     }
index 4f91e2d0ba89a88ebd2a94cec7ac4a6c7c3c5234..ce56b1151ac2c5ea5eb7328f93a9ac9d6a7a3540 100644 (file)
@@ -125,7 +125,7 @@ Handle(DE_ConfigurationNode) DEXCAFCascade_ConfigurationNode::Copy() const
 //=======================================================================
 Handle(DE_Provider) DEXCAFCascade_ConfigurationNode::BuildProvider()
 {
-  return new DEXCAFCascade_Provider();
+  return new DEXCAFCascade_Provider (this);
 }
 
 //=======================================================================