mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-01-24 15:10:33 +05:00
PAL11238: Crash in ExportMED.
This commit is contained in:
parent
f6c93f2e09
commit
b3c1fef0ed
@ -1095,29 +1095,16 @@ static void PrepareForWriting (const char* file)
|
||||
THROW_SALOME_CORBA_EXCEPTION(msg.ToCString(), SALOME::BAD_PARAM);
|
||||
}
|
||||
} else {
|
||||
// nonexisting file
|
||||
TCollection_AsciiString aDirName = aPath.TrekValue(aPath.TrekLength());
|
||||
aPath.UpTrek();
|
||||
aPath.SetName(aDirName);
|
||||
aPath.SetExtension("");
|
||||
OSD_Directory aDir (aPath);
|
||||
TCollection_AsciiString aFullDirName;
|
||||
aPath.SystemName(aFullDirName);
|
||||
if (aDir.Exists()) {
|
||||
aFile.Reset();
|
||||
aFile.Build(OSD_WriteOnly, OSD_Protection());
|
||||
if (aFile.Failed()) {
|
||||
TCollection_AsciiString msg ("You cannot write to directory ");
|
||||
msg += aFullDirName + ".";
|
||||
THROW_SALOME_CORBA_EXCEPTION(msg.ToCString(), SALOME::BAD_PARAM);
|
||||
} else {
|
||||
aFile.Close();
|
||||
aFile.Remove();
|
||||
}
|
||||
} else {
|
||||
TCollection_AsciiString msg ("Directory ");
|
||||
msg += aFullDirName + " does not exist.";
|
||||
// nonexisting file; check if it can be created
|
||||
aFile.Reset();
|
||||
aFile.Build(OSD_WriteOnly, OSD_Protection());
|
||||
if (aFile.Failed()) {
|
||||
TCollection_AsciiString msg ("You cannot create the file ");
|
||||
msg += aFullName + ". Check the directory existance and access rights.";
|
||||
THROW_SALOME_CORBA_EXCEPTION(msg.ToCString(), SALOME::BAD_PARAM);
|
||||
} else {
|
||||
aFile.Close();
|
||||
aFile.Remove();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user