double free fixed 58/15358/2
Cedric Delamarre [Thu, 9 Oct 2014 13:16:25 +0000 (15:16 +0200)]
test_run hdf5

Change-Id: I03b632f3ca6bc4534304386797a1843acef7fb23

scilab/modules/ast/src/cpp/ast/runvisitor.cpp

index a61d8c7..5f54830 100644 (file)
@@ -157,6 +157,7 @@ void RunVisitorT<T>::visitprivate(const FieldExp &e)
     if (ok)
     {
         setResult(pReturn);
+        pValue->killMe();
     }
     else if (pValue->isFieldExtractionOverloadable())
     {
@@ -193,8 +194,6 @@ void RunVisitorT<T>::visitprivate(const FieldExp &e)
         os_swprintf(szError, bsiz, _W("Attempt to reference field of non-structure array.\n").c_str());
         throw ScilabError(szError, 999, e.getLocation());
     }
-
-    pValue->killMe();
 }
 
 template <class T>