Salome HOME
Merge branch 'master' into Dev_1.1.0
[modules/shaper.git] / src / ModuleBase / ModuleBase_Operation.cpp
index 4b8c7d34bec1db0259ad11036dc3dffed806e207..ff2780957fc336c22171175d85433ee26ea824c0 100644 (file)
@@ -135,8 +135,17 @@ void ModuleBase_Operation::start()
   }
   ModelAPI_Session::get()->startOperation(anId.toStdString());
 
-  if (!myIsEditing)
-    createFeature();
+  if (!myIsEditing) {
+    FeaturePtr aFeature = createFeature();
+    // if the feature is not created, there is no sense to start the operation
+    if (aFeature.get() == NULL) {
+      // it is necessary to abor the operation in the session and emit the aborted signal
+      // in order to update commands status in the workshop, to be exact the feature action
+      // to be unchecked
+      abort();
+      return;
+    }
+  }
 
   startOperation();
   emit started();