Index: trunk/Mars/Changelog
===================================================================
--- trunk/Mars/Changelog	(revision 9867)
+++ trunk/Mars/Changelog	(revision 9868)
@@ -49,4 +49,6 @@
      - added a full class description
 
+   * mtools/MTFillMatrix.cc:
+     - improved handling of negative number of events
 
 
Index: trunk/Mars/mtools/MTFillMatrix.cc
===================================================================
--- trunk/Mars/mtools/MTFillMatrix.cc	(revision 9867)
+++ trunk/Mars/mtools/MTFillMatrix.cc	(revision 9868)
@@ -134,4 +134,7 @@
     m->Print("SizeCols");
 
+    if (num<0)
+        return kTRUE;
+
     const Int_t generated = m->GetM().GetNrows();
     if (TMath::Abs(generated-num) <= TMath::Sqrt(9.0*num))
@@ -308,7 +311,19 @@
     *fLog << inf;
     fLog->Separator(GetDescriptor());
-    *fLog << "Fill " << fDestMatrix1->GetDescriptor() << " with " << fNumDestEvents1 << endl;
+    *fLog << "Fill " << fDestMatrix1->GetDescriptor() << " with ";
+    if (fNumDestEvents1<0)
+        *fLog << "all events";
+    else
+        *fLog << fNumDestEvents1;
+    cout << "." << endl;
     if (fDestMatrix2)
-        *fLog << "Fill " << fDestMatrix2->GetDescriptor() << " with " << fNumDestEvents2 << endl;
+    {
+        *fLog << "Fill " << fDestMatrix2->GetDescriptor() << " with ";
+    if (fNumDestEvents2<0)
+        *fLog << "all events";
+    else
+        *fLog << fNumDestEvents2;
+    cout << "." << endl;
+    }
     *fLog << "Distribution choosen ";
     if (fReference && fReference->GetHist().GetEntries()>0)
@@ -321,5 +336,5 @@
     // Create parameter list and task list, add tasklist to parlist
     //
-    parlist.Print();
+    //parlist.Print();
     MParList  plist(parlist);
     MTaskList tlist;
