diff --git a/Code/SpatialReasoning/otbRCC8Graph.h b/Code/SpatialReasoning/otbRCC8Graph.h
index 2bbdb1153f9ae5f917aaa53643cf0a25cd7461fd..0398a46b42d92cb13f3743f41b12957b1a43d56a 100644
--- a/Code/SpatialReasoning/otbRCC8Graph.h
+++ b/Code/SpatialReasoning/otbRCC8Graph.h
@@ -122,6 +122,8 @@ protected:
      */
     void Initialize( unsigned int num);
 
+
+
 private:
 
   /** Defines the number of vertices (ie total number of segmentation regions)*/
diff --git a/Code/SpatialReasoning/otbRCC8GraphFileWriter.txx b/Code/SpatialReasoning/otbRCC8GraphFileWriter.txx
index ad673acae8d3d7ebae07842b32b646e1d662847d..be6643faf5f56fc2265645f3d6bc9822c341297b 100644
--- a/Code/SpatialReasoning/otbRCC8GraphFileWriter.txx
+++ b/Code/SpatialReasoning/otbRCC8GraphFileWriter.txx
@@ -104,10 +104,11 @@ RCC8GraphFileWriter<TInputGraph>
     itkExceptionMacro(<<"No filename was specified");
     }
 
-  if(input->GetSource())
-    {
-      input->GetSource()->UpdateOutputData(input);
-    }
+  // Pipeline updating sequence
+  input->UpdateOutputInformation();
+  input->PropagateRequestedRegion();
+  input->UpdateOutputData();
+  // GenerateData (actually write file)
   this->GenerateData();
 }
 /**