diff --git a/core/base/src/TApplication.cxx b/core/base/src/TApplication.cxx
index da62cd7e2bbe7ae6bde77c4bf5f8bd5e68199b48..ac023fc6a2a17e6f20f1d774315338dca1e28092 100644
--- a/core/base/src/TApplication.cxx
+++ b/core/base/src/TApplication.cxx
@@ -475,6 +475,11 @@ void TApplication::GetOptions(Int_t *argc, char **argv)
          if (fFiles) {
             for (auto f: *fFiles) {
                TObjString* file = dynamic_cast<TObjString*>(f);
+               if (!file) {
+                  Error("GetOptions()", "Inconsistent file entry (not a TObjString)!");
+                  f->Dump();
+                  continue;
+               }
 
                if (file->TestBit(kExpression))
                   continue;