diff --git a/gui/gui/src/TRootBrowser.cxx b/gui/gui/src/TRootBrowser.cxx
index 676ce0e74d35b08aec00a9df0b53cb9ebdcae7ef..f41bb5eec0a17ff1bd1bdddb9a030cb2fcb753e7 100644
--- a/gui/gui/src/TRootBrowser.cxx
+++ b/gui/gui/src/TRootBrowser.cxx
@@ -633,6 +633,7 @@ void TRootBrowser::HandleMenu(Int_t id)
          break;
       case kOpenFile:
          {
+            Bool_t newfile = kFALSE;
             static TString dir(".");
             TGFileInfo fi;
             fi.fFileTypes = gOpenFileTypes;
@@ -647,12 +648,14 @@ void TRootBrowser::HandleMenu(Int_t id)
                   gROOT->ProcessLine(Form("new TFile(\"%s\");",
                                      gSystem->UnixPathName(el->GetString())));
                }
+               newfile = kTRUE;
             }
             else if (fi.fFilename) {
                gROOT->ProcessLine(Form("new TFile(\"%s\");",
                                   gSystem->UnixPathName(fi.fFilename)));
+               newfile = kTRUE;
             }
-            if (fActBrowser) {
+            if (fActBrowser && newfile) {
                TGFileBrowser *fb = dynamic_cast<TGFileBrowser *>(fActBrowser);
                if (fb) fb->Selected(0);
             }