diff --git a/hshetl/extractors.py b/hshetl/extractors.py
index 0a7122516da2a3c070aa97affbdef629d7ff8bd8..e7be613ada44ab724116816f0262ab02958a54a3 100644
--- a/hshetl/extractors.py
+++ b/hshetl/extractors.py
@@ -205,8 +205,11 @@ class LdapExtractor(AbstractExtractor):
row = {'dn': dn}
for key, value in entry.items():
logging.debug('%s %s' % (key, value))
- value = map(lambda v: unicode(v.decode(self.connector.encoding)), value)
- if len(value) is 1: value = value[0]
+ if type(value) != list:
+ value = unicode(value.decode(self.connector.encoding))
+ else:
+ value = map(lambda v: unicode(v.decode(self.connector.encoding)), value)
+ if len(value) is 1: value = value[0]
row[key] = value
result.append(row)
return result