Anonymous avatar Anonymous committed ba64bb1

0.12.3dev: Raises `TracError` if a config file cannot be read, and `trac-admin` handles the exception.

Closes #10044.

Comments (0)

Files changed (2)

trac/admin/console.py

         return self.complete_line(text, line)
         
     def default(self, line):
-        if not self.env_check():
-            raise AdminCommandError(_("Command not found"))
+        try:
+            if not self.__env:
+                self._init_env()
+        except TracError, e:
+            raise AdminCommandError(to_unicode(e))
+        except Exception, e:
+            raise AdminCommandError(exception_to_unicode(e))
         args = self.arg_tokenize(line)
         cmd_mgr = AdminCommandManager(self.env)
         return cmd_mgr.execute_command(*args)
         if force or modtime > self._lastmtime:
             self._sections = {}
             self.parser._sections = {}
-            self.parser.read(self.filename)
+            if not self.parser.read(self.filename):
+                raise TracError(_("Error reading '%(file)s', make sure it is "
+                                  "readable.", file=self.filename))
             self._lastmtime = modtime
             self._old_sections = deepcopy(self.parser._sections)
             changed = True
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.