Salome HOME
Additional minor correction to previous commit
[modules/smesh.git] / src / DriverUNV / DriverUNV_R_SMDS_Mesh.cxx
index 10f7567f090aa9eae82d642ff298266f53ccc0aa..7b48ee664e45a41391845ae4681eb9f939ed3373 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2016  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2019  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -102,7 +102,12 @@ Driver_Mesh::Status DriverUNV_R_SMDS_Mesh::Perform()
 {
   Kernel_Utils::Localizer loc;
   Status aResult = DRS_OK;
+#if defined(WIN32) && defined(UNICODE)
+  std::wstring aFile = Kernel_Utils::utf8_decode_s(myFile);
+  std::ifstream in_stream(aFile.c_str());
+#else
   std::ifstream in_stream(myFile.c_str());
+#endif
   try
   {
     {
@@ -191,7 +196,7 @@ Driver_Mesh::Status DriverUNV_R_SMDS_Mesh::Perform()
           case 51: // Plane Strain Linear Triangle
           case 61: // Plate Linear Triangle
           case 74: // Membrane Linear Triangle
-          case 81: // Axisymetric Solid Linear Triangle
+          case 81: // Axisymmetric Solid Linear Triangle
           case 91: // Thin Shell Linear Triangle
             anElement = myMesh->AddFaceWithID(aRec.node_labels[0],
                                               aRec.node_labels[1],
@@ -203,7 +208,7 @@ Driver_Mesh::Status DriverUNV_R_SMDS_Mesh::Perform()
           case 52: //  Plane Strain Parabolic Triangle
           case 62: //  Plate Parabolic Triangle
           case 72: //  Membrane Parabolic Triangle
-          case 82: //  Axisymetric Solid Parabolic Triangle
+          case 82: //  Axisymmetric Solid Parabolic Triangle
           case 92: //  Thin Shell Parabolic Triangle
             if ( aRec.node_labels.size() == 7 )
               anElement = myMesh->AddFaceWithID(aRec.node_labels[0],
@@ -228,7 +233,7 @@ Driver_Mesh::Status DriverUNV_R_SMDS_Mesh::Perform()
           case 54: // Plane Strain Linear Quadrilateral
           case 64: // Plate Linear Quadrilateral
           case 71: // Membrane Linear Quadrilateral
-          case 84: // Axisymetric Solid Linear Quadrilateral
+          case 84: // Axisymmetric Solid Linear Quadrilateral
           case 94: // Thin Shell Linear Quadrilateral
             anElement = myMesh->AddFaceWithID(aRec.node_labels[0],
                                               aRec.node_labels[1],
@@ -241,7 +246,7 @@ Driver_Mesh::Status DriverUNV_R_SMDS_Mesh::Perform()
           case 55: // Plane Strain Parabolic Quadrilateral
           case 65: // Plate Parabolic Quadrilateral
           case 75: // Membrane Parabolic Quadrilateral
-          case 85: // Axisymetric Solid Parabolic Quadrilateral
+          case 85: // Axisymmetric Solid Parabolic Quadrilateral
           case 95: // Thin Shell Parabolic Quadrilateral
             if ( aRec.node_labels.size() == 9 )
               anElement = myMesh->AddFaceWithID(aRec.node_labels[0],