Index: trunk/MagicSoft/Mars/mbase/MReadTree.cc
===================================================================
--- trunk/MagicSoft/Mars/mbase/MReadTree.cc	(revision 1030)
+++ trunk/MagicSoft/Mars/mbase/MReadTree.cc	(revision 1032)
@@ -302,14 +302,19 @@
     {
         //
-        // Get Name of Branch
-        //
-        const char *name = branch->GetName();
+        // Get Name of Branch and Object
+        //
+        const char *bname = branch->GetName();
+
+        TString oname(bname);
+
+        if (oname.EndsWith("."))
+            oname.Remove(oname.Length()-1);
 
         //
         // Check if enabeling the branch is allowed
         //
-        if (fVetoList->FindObject(name))
+        if (fVetoList->FindObject(oname))
         {
-            *fLog << "Master branch " << name << " has veto... skipped." << endl;
+            *fLog << "Master branch " << bname << " has veto... skipped." << endl;
             DisableSubBranches(branch);
             continue;
@@ -326,5 +331,5 @@
         // check if object is existing in the list
         //
-        *pcont=pList->FindCreateObj(name);
+        *pcont=pList->FindCreateObj(oname);
 
         if (!*pcont)
@@ -334,5 +339,5 @@
             // we cannot proceed reading this branch
             //
-            *fLog << dbginf << "Warning: Class '" << name << "' not existing in dictionary. Branch skipped." << endl;
+            *fLog << dbginf << "Warning: Class '" << oname << "' not existing in dictionary. Branch skipped." << endl;
             DisableSubBranches(branch);
             continue;
@@ -343,7 +348,9 @@
         // the actual branch should be stored - enable branch.
         //
-        fChain->SetBranchAddress(name, pcont);
-
-        *fLog << "Master branch address " << name << " setup for reading." << endl;
+        fChain->SetBranchAddress(bname, pcont);
+        *fLog << "Master branch address " << bname << " setup for reading." << endl;
+
+        //*fLog << "Branch " << bname << " autodel: " << (int)branch->IsAutoDelete() << endl;
+        branch->SetAutoDelete();
 
         num++;
