summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--ranger/__main__.py2
-rw-r--r--ranger/shared/settings.py4
2 files changed, 5 insertions, 1 deletions
diff --git a/ranger/__main__.py b/ranger/__main__.py
index 39e7f1f3..7db82a57 100644
--- a/ranger/__main__.py
+++ b/ranger/__main__.py
@@ -212,6 +212,8 @@ def main():
 		fm.tabs = dict((n+1, os.path.abspath(path)) for n, path \
 				in enumerate(targets[:9]))
 		load_settings(fm, ranger.arg.clean)
+		if fm.env.username == 'root':
+			fm.settings.preview_files = False
 		FileManagerAware._assign(fm)
 		fm.ui = UI()
 
diff --git a/ranger/shared/settings.py b/ranger/shared/settings.py
index 3a178882..7604af12 100644
--- a/ranger/shared/settings.py
+++ b/ranger/shared/settings.py
@@ -66,7 +66,9 @@ class SettingObject(SignalDispatcher):
 		if name[0] == '_':
 			self.__dict__[name] = value
 		else:
-			assert name in self._settings, "No such setting: {0}!".format(name)
+			assert name in ALLOWED_SETTINGS, "No such setting: {0}!".format(name)
+			if name not in self._settings:
+				getattr(self, name)
 			assert self._check_type(name, value)
 			kws = dict(setting=name, value=value,
 					previous=self._settings[name])