diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/run/CosmicMonitorRec_jobOptions.py alias b/InnerDetector/InDetMonitoring/SCT_Monitoring/run/CosmicMonitorRec_jobOptions.py alias
old mode 100755
new mode 100644
diff --git a/MuonSpectrometer/MuonCalib/CscCalib/CscCalibAlgs/cmt/cdb.log b/MuonSpectrometer/MuonCalib/CscCalib/CscCalibAlgs/cmt/cdb.log
old mode 100644
new mode 100755
diff --git a/PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/Driver.h b/PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/Driver.h
index 970543a1180c079424cdf6929ae58a906601a2fb..a84771094137e964a88ce715f8660711230bdf31 100644
--- a/PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/Driver.h
+++ b/PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/Driver.h
@@ -62,6 +62,8 @@ namespace EL
     /// This is mostly for small jobs and backward compatibility.  For
     /// longer jobs use \ref submitOnly instead.
     ///
+    /// \return The actual location of the submit directory, if the
+    /// job was configured to generate a unique directory.
     /// \par Guarantee
     ///   basic, may partially submit
     /// \par Failures
@@ -69,12 +71,8 @@ namespace EL
     /// \par Failures
     ///   can't create directory at location\n
     ///   submission errors
-    /// \{
   public:
-    void submit (const Job& job, const std::string& location) const;
-    void submit (const Job& job, const std::string& location,
-                 std::string& actualLocation) const;
-    /// \}
+    std::string submit (const Job& job, const std::string& location) const;
 
 
     /// \brief submit the given job with the given output location
@@ -83,6 +81,8 @@ namespace EL
     /// This method allows you to submit jobs to your local batch
     /// system, log out and at a later point log back in again.
     ///
+    /// \return The actual location of the submit directory, if the
+    /// job was configured to generate a unique directory.
     /// \par Guarantee
     ///   basic, may partially submit
     /// \par Failures
@@ -93,12 +93,8 @@ namespace EL
     ///   work in the submit function.
     /// \warn you normally need to call wait() or retrieve() before
     ///   you can use the output.
-    /// \{
   public:
-    void submitOnly (const Job& job, const std::string& location) const;
-    void submitOnly (const Job& job, const std::string& location,
-                     std::string& actualLocation) const;
-    /// \}
+    std::string submitOnly (const Job& job, const std::string& location) const;
 
 
     /// \brief resubmit all failed sub-jobs for the job in the given
diff --git a/PhysicsAnalysis/D3PDTools/EventLoop/Root/Driver.cxx b/PhysicsAnalysis/D3PDTools/EventLoop/Root/Driver.cxx
index 689badcab3ec46b77e7746efa3a69e3ea2877a11..b0285da0a63ecd4196298fc7d1837ef002ddf41e 100644
--- a/PhysicsAnalysis/D3PDTools/EventLoop/Root/Driver.cxx
+++ b/PhysicsAnalysis/D3PDTools/EventLoop/Root/Driver.cxx
@@ -87,44 +87,21 @@ namespace EL
 
 
 
-  void Driver ::
+  std::string Driver ::
   submit (const Job& job, const std::string& location) const
   {
     // no invariant used
 
-    std::string actualLocation;
-    submit (job, location, actualLocation);
-  }
-
-
-
-  void Driver ::
-  submit (const Job& job, const std::string& location,
-          std::string& actualLocation) const
-  {
-    // no invariant used
-
-    submitOnly (job, location, actualLocation);
+    std::string actualLocation = submitOnly (job, location);
     ANA_MSG_DEBUG ("wait on: " << actualLocation);
     wait (actualLocation);
+    return actualLocation;
   }
 
 
 
-  void Driver ::
+  std::string Driver ::
   submitOnly (const Job& job, const std::string& location) const
-  {
-    // no invariant used
-
-    std::string actualLocation;
-    submitOnly (job, location, actualLocation);
-  }
-
-
-
-  void Driver ::
-  submitOnly (const Job& job, const std::string& location,
-              std::string& actualLocation) const
   {
     RCU_READ_INVARIANT (this);
 
@@ -140,7 +117,7 @@ namespace EL
     data.job = &myjob;
     if (data.run().isFailure())
       throw std::runtime_error ("failed to submit job");
-    actualLocation = data.submitDir;
+    return data.submitDir;
   }
 
 
diff --git a/PhysicsAnalysis/D3PDTools/EventLoopTest/Root/UnitTest.cxx b/PhysicsAnalysis/D3PDTools/EventLoopTest/Root/UnitTest.cxx
index 0c1955e842eaf309cf99bb7ba3911ce8a9b836d0..d439919c64b6e3a320f8f5209eae0d4a75e15e47 100644
--- a/PhysicsAnalysis/D3PDTools/EventLoopTest/Root/UnitTest.cxx
+++ b/PhysicsAnalysis/D3PDTools/EventLoopTest/Root/UnitTest.cxx
@@ -159,8 +159,7 @@ namespace EL
       if (!cleanup)
 	ANA_MSG_INFO ("placing temporary files in: " << submitDir);
       job.options()->setString (Job::optSubmitDirMode, "unique");
-      std::string output;
-      driver.submit (job, submitDir.Data(), output);
+      std::string output = driver.submit (job, submitDir.Data());
 
       for (std::size_t iter = 0, end = samples.size(); iter != end; ++ iter)
       {