diff --git a/AMDiS/src/io/ArhReader.cc b/AMDiS/src/io/ArhReader.cc
index bad8fa0be1b73f0cc4464a9a460f155e09edf6cb..ec9f5393fd4ffe1e58caacb8a46c6edf8b9b6261 100644
--- a/AMDiS/src/io/ArhReader.cc
+++ b/AMDiS/src/io/ArhReader.cc
@@ -32,13 +32,15 @@ namespace AMDiS {
 		       int nProcs)
   {
     int nValueVectors = getNumValueVectors(filename);
-    vector<DOFVector<double>*> vecs(nValueVectors, NULL);
+    vector<DOFVector<double>*> vecs(0);
     if (nValueVectors > 0)
-      vecs[0] = vec0;
+      vecs.push_back(vec0);
     if (nValueVectors > 1)
-      vecs[1] = vec1;
+      vecs.push_back(vec1);
     if (nValueVectors > 2)
-      vecs[2] = vec2;
+      vecs.push_back(vec2);
+    for (size_t i = 3; i < nValueVectors; i++)
+      vecs.push_back(NULL);
     
     ArhReader::read(filename, mesh, vecs, writeParallel, nProcs);
   }