Salome HOME
same fix as in SignCAD()
authoreap <eap@opencascade.com>
Thu, 19 Aug 2021 14:09:28 +0000 (17:09 +0300)
committereap <eap@opencascade.com>
Thu, 19 Aug 2021 14:09:28 +0000 (17:09 +0300)
src/SMESHUtils/SMESH_MGLicenseKeyGen.cxx

index a49e74bf8b777c90e481cf21b0b6ace83bdbfcc9..fa5b78858ad6766ce2b9beb1fdc357fcd4735865 100644 (file)
@@ -373,7 +373,6 @@ namespace SMESHUtils_MGLicenseKeyGen // API implementation
     }
     else
     {
-
       SMESH_TRY;
 
       ok = signFun( meshgems_cad );
@@ -403,6 +402,7 @@ namespace SMESHUtils_MGLicenseKeyGen // API implementation
     if ( !loadLibrary( error, libraryFile ))
       return false;
 
+    bool ok = false;
     typedef bool (*SignFun)(void* );
     SignFun signFun = (SignFun) GetProc( theLibraryHandle, "SignMesh" );
     if ( !signFun )
@@ -410,19 +410,19 @@ namespace SMESHUtils_MGLicenseKeyGen // API implementation
       if ( ! getLastError( error ))
         error = SMESH_Comment( "Can't find symbol 'SignMesh' in '") << getenv( theEnvVar ) << "'";
     }
-    bool ok;
-
-    SMESH_TRY;
-
-    ok = signFun( meshgems_mesh );
+    else
+    {
+      SMESH_TRY;
 
-    SMESH_CATCH( SMESH::returnError );
+      ok = signFun( meshgems_mesh );
 
-    if ( !error.empty() )
-      ok = false;
-    else if ( !ok )
-      error = "SignMesh() failed (located in '" + libraryFile._name + "')";
+      SMESH_CATCH( SMESH::returnError );
 
+      if ( !error.empty() )
+        ok = false;
+      else if ( !ok )
+        error = "SignMesh() failed (located in '" + libraryFile._name + "')";
+    }
     return ok;
   }
 
@@ -455,8 +455,10 @@ namespace SMESHUtils_MGLicenseKeyGen // API implementation
       if ( ! getLastError( error ))
         error = SMESH_Comment( "Can't find symbol 'GetKey' in '") << getenv( theEnvVar ) << "'";
     }
-    key = keyFun( gmfFile, nbVertex, nbEdge, nbFace, nbVol );
-
+    else
+    {
+      key = keyFun( gmfFile, nbVertex, nbEdge, nbFace, nbVol );
+    }
     if ( key.empty() )
       error = "GetKey() failed (located in '" + libraryFile._name + "')";