Index: /trunk/Mars/Changelog
===================================================================
--- /trunk/Mars/Changelog	(revision 10044)
+++ /trunk/Mars/Changelog	(revision 10045)
@@ -18,4 +18,14 @@
 
                                                  -*-*- END OF LINE -*-*-
+
+ 2010/10/28 Thomas Bretz
+
+   * mjobs/MJCuts.cc:
+     - improved debug output in WriteResults
+
+   * mjobs/MJob.cc:
+     - imporved searching for an open file in WriteContainer
+
+
 
  2010/10/28 Daniela Dorner
Index: /trunk/Mars/mjobs/MJCut.cc
===================================================================
--- /trunk/Mars/mjobs/MJCut.cc	(revision 10044)
+++ /trunk/Mars/mjobs/MJCut.cc	(revision 10045)
@@ -330,10 +330,14 @@
     if (fNameResult.IsNull() && fStoreResult)
     {
+        *fLog << inf2 << "Searching for open file " << fname << "... " << flush;
+
         TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(fname);
         if (file)
         {
+            *fLog << "found." << endl;
             file->cd();
             return WriteContainer(arr);
         }
+        *fLog << "not found." << endl;
     }
 
Index: /trunk/Mars/mjobs/MJob.cc
===================================================================
--- /trunk/Mars/mjobs/MJob.cc	(revision 10044)
+++ /trunk/Mars/mjobs/MJob.cc	(revision 10045)
@@ -523,10 +523,5 @@
     }
 
-    const TString oname = CombinePath(fPathOut, name);
-
-    *fLog << inf << "Writing to file: " << oname << endl;
-
-    TString title("File written by ");
-    title += fName;
+    TString oname = CombinePath(fPathOut, name);
 
     // In case the update-option is selected check whether
@@ -535,11 +530,22 @@
     {
         TFile *file = dynamic_cast<TFile*>(gROOT->GetListOfFiles()->FindObject(oname));
+        if (!file || !file->IsOpen() || file->IsZombie())
+        {
+            gSystem->ExpandPathName(oname);
+            file = dynamic_cast<TFile*>(gROOT->GetListOfFiles()->FindObject(oname));
+        }
+
         if (file && file->IsOpen() && !file->IsZombie())
         {
-            *fLog << inf << "Open file found." << endl;
+            *fLog << inf << "Updating open file " << oname << "." << endl;
             file->cd();
             return WriteContainer(cont);
         }
     }
+
+    *fLog << inf << "Writing to file " << oname << "." << endl;
+
+    TString title("File written by ");
+    title += fName;
 
     // Open a new file with the defined option for writing
