Index: /trunk/FACT++/src/DataWriteFits2.cc
===================================================================
--- /trunk/FACT++/src/DataWriteFits2.cc	(revision 17298)
+++ /trunk/FACT++/src/DataWriteFits2.cc	(revision 17299)
@@ -184,14 +184,20 @@
     if (fits)
     {
-        // Maximum number of tiles setup by user
+        const uint32_t nrpt = zofits::DefaultNumRowsPerTile();
+
+        // Maximum number of events if taken with 100Hz
+        // (If no limit requested, maxtime is 24*60*60)
+        const uint32_t ntime = d.maxtime*100/nrpt;
+
+        // Maximum number of events if taken as number
+        // (If no limit requested, maxevts is INT32_MAX)
+        const uint32_t nevts = d.maxevt/nrpt+1;
+
+        // get the minimum of all three
         uint32_t num = zofits::DefaultMaxNumTiles();
-
-        // Maximum number if data is taken with 100Hz
-        if (d.maxtime*100<num)
-            num = d.maxtime*100/zofits::DefaultNumRowsPerTile()+1;
-
-        // Maximum number if number is known
-        if (d.maxevt<num)
-            num = d.maxevt/zofits::DefaultNumRowsPerTile()+1;
+        if (ntime<num)
+            num = ntime;
+        if (nevts<num)
+            num = nevts;
 
         fits->SetNumTiles(num);
