Index: trunk/MagicSoft/Mars/Changelog
===================================================================
--- trunk/MagicSoft/Mars/Changelog	(revision 4214)
+++ trunk/MagicSoft/Mars/Changelog	(revision 4215)
@@ -27,4 +27,8 @@
      - removed obsolete empty function which (believing the Changelog)
        are not there at all!
+
+   * mbase/MDirIter.[h,cc]:
+     - moved code of Reset() funtion to source file
+     - added more comments to Reset function
 
 
Index: trunk/MagicSoft/Mars/mbase/MDirIter.cc
===================================================================
--- trunk/MagicSoft/Mars/mbase/MDirIter.cc	(revision 4214)
+++ trunk/MagicSoft/Mars/mbase/MDirIter.cc	(revision 4215)
@@ -258,4 +258,20 @@
 // --------------------------------------------------------------------------
 //
+// Reset the iteration and strat from scratch. To do this correctly we have
+// to reset the list of directories to iterate _and_ to close the current
+// directory. When you call Next() the next time the first directory will
+// be reopened again and you'll get the first entry.
+//
+// Do not try to only close the current directory or to reset the directory
+// list only. This might not give the expected result!
+//
+void  MDirIter::Reset()
+{
+    Close();
+    fNext.Reset();
+}
+
+// --------------------------------------------------------------------------
+//
 // Return the Next file in the directory which is valid (see Check())
 // nocheck==1 returns the next entry unchecked
Index: trunk/MagicSoft/Mars/mbase/MDirIter.h
===================================================================
--- trunk/MagicSoft/Mars/mbase/MDirIter.h	(revision 4214)
+++ trunk/MagicSoft/Mars/mbase/MDirIter.h	(revision 4215)
@@ -49,9 +49,5 @@
 
     Int_t AddDirectory(const char *dir, const char *filter="", Int_t recursive=0);
-    void  Reset()
-    {
-        Close();
-        fNext.Reset();
-    }
+    void  Reset();
     void ResetIter() {fNext.Reset();}
 
