From 5501b20ee39ac40d77638bb679f14d964ee48750 Mon Sep 17 00:00:00 2001 From: asv Date: Fri, 29 Apr 2005 11:17:32 +0000 Subject: [PATCH] Fix for bug PAL8727. In method _SaveAs() (called from Save(), SaveAs(), SaveAscii(), SaveAsAscii()) there was a double call to SALOMEDS::lock() from different threads. The first call was in Save(), and the second - was in some Engine::Save(). The fix consists in calling to unlock() BEFORE calling Engine::Save() and lock() again - after the call. --- src/SALOMEDS/SALOMEDS_StudyManager_i.cxx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/SALOMEDS/SALOMEDS_StudyManager_i.cxx b/src/SALOMEDS/SALOMEDS_StudyManager_i.cxx index d0464d63f..3c2ae551b 100644 --- a/src/SALOMEDS/SALOMEDS_StudyManager_i.cxx +++ b/src/SALOMEDS/SALOMEDS_StudyManager_i.cxx @@ -831,10 +831,12 @@ void SALOMEDS_StudyManager_i::_SaveAs(const char* aUrl, SALOMEDS::TMPFile_var aStream; + SALOMEDS::unlock(); // asv : fix for PAL8727 if(theASCII) aStream = Engine->SaveASCII(sco,SALOMEDS_Tool::GetDirFromPath(aUrl).c_str(),theMultiFile); else aStream = Engine->Save(sco,SALOMEDS_Tool::GetDirFromPath(aUrl).c_str(),theMultiFile); + SALOMEDS::lock(); // asv : fix for PAL8727 HDFdataset *hdf_dataset; hdf_size aHDFSize[1]; -- 2.39.2