0027604: Application Framework - memory is not released after closing XBF file
[occt.git] / src / BinLDrivers / BinLDrivers_DocumentRetrievalDriver.cxx
index aa851d9..cd519df 100644 (file)
@@ -297,9 +297,7 @@ void BinLDrivers_DocumentRetrievalDriver::Read (Standard_IStream&
 
   // read sub-tree of the root label
   Standard_Integer nbRead = ReadSubTree (theIStream, aData->Root());
-  myPAtt.Destroy();    // free buffer
-  myRelocTable.Clear();
-  myMapUnsupported.Clear();
+  Clear();
     
   if (nbRead > 0) {
     // attach data to the document
@@ -492,6 +490,17 @@ void BinLDrivers_DocumentRetrievalDriver::CheckShapeSection(
 }
 
 //=======================================================================
+//function : Clear
+//purpose  : 
+//=======================================================================
+void BinLDrivers_DocumentRetrievalDriver::Clear()
+{
+  myPAtt.Destroy();    // free buffer
+  myRelocTable.Clear();
+  myMapUnsupported.Clear();
+}
+
+//=======================================================================
 //function : PropagateDocumentVersion
 //purpose  : 
 //=======================================================================