summaryrefslogtreecommitdiff
path: root/configobj.py
diff options
context:
space:
mode:
authorfuzzyman <devnull@localhost>2009-10-25 18:50:02 +0000
committerfuzzyman <devnull@localhost>2009-10-25 18:50:02 +0000
commita25ed92de120446e3b58585ab1b362990851e81f (patch)
tree7a4a766d102cf3bc61b19acdd7d025cc853ce67b /configobj.py
parentcead96333b2a8420906fc832be1f9805770e6c14 (diff)
downloadconfigobj-git-a25ed92de120446e3b58585ab1b362990851e81f.tar.gz
String interpolation now works in list values.
Diffstat (limited to 'configobj.py')
-rw-r--r--configobj.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/configobj.py b/configobj.py
index 0b0c514..6d44844 100644
--- a/configobj.py
+++ b/configobj.py
@@ -559,8 +559,15 @@ class Section(dict):
def __getitem__(self, key):
"""Fetch the item and do string interpolation."""
val = dict.__getitem__(self, key)
- if self.main.interpolation and isinstance(val, basestring):
- return self._interpolate(key, val)
+ if self.main.interpolation:
+ if isinstance(val, basestring):
+ return self._interpolate(key, val)
+ if isinstance(val, list):
+ def _check(entry):
+ if isinstance(entry, basestring):
+ return self._interpolate(key, entry)
+ return entry
+ return [_check(entry) for entry in val]
return val