diff --git a/add_mesh_BoltFactory/createMesh.py b/add_mesh_BoltFactory/createMesh.py
index 4cec092d5e1e54e315a1c0a89187c057c27c1c6b..1ff82229e6d57a1027481d30187a1eed879047b3 100644
--- a/add_mesh_BoltFactory/createMesh.py
+++ b/add_mesh_BoltFactory/createMesh.py
@@ -2094,8 +2094,9 @@ def create_mesh_object(context, verts, edges, faces, name, edit, align_matrix):
     # Update mesh geometry after adding stuff.
     mesh.update()
 
-    # Deselect all objects.
-    bpy.ops.object.select_all(action='DESELECT')
+    # Deselect all objects when in object mode
+    if bpy.ops.object.select_all.poll():
+        bpy.ops.object.select_all(action='DESELECT')
 
     if edit:
         # Replace geometry of existing object
diff --git a/add_mesh_ant_landscape.py b/add_mesh_ant_landscape.py
index d7ca08d043c77b2190465ff2a9f4847cedb2edd2..19e680bb0153bc9b6d5e4e2e2f9025d1b2770757 100644
--- a/add_mesh_ant_landscape.py
+++ b/add_mesh_ant_landscape.py
@@ -737,8 +737,9 @@ class landscape_add(bpy.types.Operator):
             undo = bpy.context.user_preferences.edit.use_global_undo
             bpy.context.user_preferences.edit.use_global_undo = False
 
-            # deselect all objects
-            bpy.ops.object.select_all(action='DESELECT')
+            # deselect all objects when in object mode
+            if bpy.ops.object.select_all.poll():
+                bpy.ops.object.select_all(action='DESELECT')
 
             # options
             options = [
@@ -787,7 +788,10 @@ class landscape_add(bpy.types.Operator):
 
             # Shade smooth
             if self.SmoothMesh !=0:
-                bpy.ops.object.shade_smooth()
+                if bpy.ops.object.shade_smooth.poll():
+                    bpy.ops.object.shade_smooth()
+                else: # edit mode
+                    bpy.ops.mesh.faces_shade_smooth()
 
             # restore pre operator undo state
             bpy.context.user_preferences.edit.use_global_undo = undo