summaryrefslogtreecommitdiff
path: root/sphinx/config.py
diff options
context:
space:
mode:
Diffstat (limited to 'sphinx/config.py')
-rw-r--r--sphinx/config.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/sphinx/config.py b/sphinx/config.py
index de8af7c1c..cf6bed087 100644
--- a/sphinx/config.py
+++ b/sphinx/config.py
@@ -284,9 +284,11 @@ class Config(object):
except ValueError:
warn('invalid number %r for config value %r, ignoring'
% (value, valname))
+ elif hasattr(defvalue, '__call__'):
+ config[valname] = value
elif defvalue is not None and not isinstance(defvalue, string_types):
- warn('cannot override config setting %r with unsupported type, '
- 'ignoring' % valname)
+ warn('cannot override config setting %r with unsupported '
+ 'type, ignoring' % valname)
else:
config[valname] = value
else: