diff --git a/AMDiS/src/io/FileWriterInterface.cc b/AMDiS/src/io/FileWriterInterface.cc
index a9721e61f41710827cce291bd58aee6e8dc35542..b946019966ef3e5a0d26b8762a3441b7a0fba284 100644
--- a/AMDiS/src/io/FileWriterInterface.cc
+++ b/AMDiS/src/io/FileWriterInterface.cc
@@ -85,8 +85,9 @@ namespace AMDiS {
 
 #if HAVE_PARALLEL_DOMAIN_AMDIS
     paraFilename = filename;
-    fn2 = fn + "_p" + boost::lexical_cast<std::string>(MPI::COMM_WORLD.Get_rank()) + ".";
-    fn += "-p" + boost::lexical_cast<std::string>(MPI::COMM_WORLD.Get_rank()) + "-";
+    std::string tmp = fn;
+    fn = tmp + "-p" + boost::lexical_cast<std::string>(MPI::COMM_WORLD.Get_rank()) + "-";
+    fn2 = tmp + "_p" + boost::lexical_cast<std::string>(MPI::COMM_WORLD.Get_rank());
     postfix = "";
 #endif
 
@@ -103,8 +104,8 @@ namespace AMDiS {
 
       fn += timeStr;
 #if HAVE_PARALLEL_DOMAIN_AMDIS
-      fn2 += timeStr;
-      paraFilename += timeStr;
+      fn2 = tmp + "." + timeStr + "_p" + boost::lexical_cast<std::string>(MPI::COMM_WORLD.Get_rank());
+      paraFilename = paraFilename + "." + timeStr;
       postfix += timeStr;
 #endif
     }