diff --git a/include/lsgrmController.txx b/include/lsgrmController.txx
index 0d3490f5a47eacb3a08dc8dab47cca24cf3e5827..f241f23d9beb21e82fbad1566aec74aec4377eb2 100644
--- a/include/lsgrmController.txx
+++ b/include/lsgrmController.txx
@@ -14,7 +14,6 @@ Controller<TSegmenter>::Controller()
   m_TileWidth = 0;
   m_NbTilesX = 0;
   m_NbTilesY = 0;
-  m_CleanTemporaryFiles = true;
   m_Threshold = 75;
   m_Memory = 0;
 }
@@ -103,18 +102,23 @@ void Controller<TSegmenter>::RunSegmentation()
           m_InputImage->GetNumberOfComponentsPerPixel(),
           isFusion);
 
-      // Update the number of iterations remaining
-      if (numberOfIterationsRemaining > numberOfIterationsForPartialSegmentations)
-        {
-        numberOfIterationsRemaining -= numberOfIterationsForPartialSegmentations;
-        }
-
 #ifdef OTB_USE_MPI
       // Gathering useful variables
       GatherUsefulVariables(accumulatedMemory, isFusion);
 #endif
+
       // Time monitoring
       ShowTime(t);
+
+      // Update the number of iterations remaining
+      if (numberOfIterationsRemaining > numberOfIterationsForPartialSegmentations)
+        {
+        numberOfIterationsRemaining -= numberOfIterationsForPartialSegmentations;
+        }
+      else
+        {
+        break;
+        }
       }
 
 
@@ -315,7 +319,7 @@ void Controller<TSegmenter>::GetAutomaticConfiguration()
           // Compactness
           float perimeter = tileWidth + tileHeight;
           float surface = tileWidth * tileHeight;
-          float compactness = perimeter / surface * (float) vcl_max(tileWidth,tileHeight); // [1,+inf]
+          float compactness = perimeter / surface * (float) std::max(tileWidth,tileHeight); // [1,+inf]
 
           // Update minimum criterion
           float criterion = compactness / percentMemory; // ]0, +inf]
diff --git a/include/lsgrmHeader.h b/include/lsgrmHeader.h
index 95dad7adcf94f1dd5edd9663ca6da20b4e7b10fc..0cb91ee52a3902e85d744495e50595b10130a889 100644
--- a/include/lsgrmHeader.h
+++ b/include/lsgrmHeader.h
@@ -19,8 +19,8 @@
 #endif
 
 /*
- * This function returns TRUE if it's to the process #myrank to do the
- * work on the yard #div in a pool of #nprocs threads
+ * This function returns TRUE if the process #myrank is assigned
+ * to the task #div in a pool of #nprocs processes
  */
 bool MyTurn(int div = 0)
 {