From 2109fc94fb310f24d89ff3738225099936d942cc Mon Sep 17 00:00:00 2001 From: Aleksander Machniak Date: Wed, 21 Jan 2015 10:29:08 +0100 Subject: Fix bug where empty fieldmap config entries caused empty results of ldap search (#1490229) Conflicts: CHANGELOG --- CHANGELOG | 1 + program/lib/Roundcube/rcube_ldap.php | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG b/CHANGELOG index 24e97dc3e..31303e0c7 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -10,6 +10,7 @@ CHANGELOG Roundcube Webmail - Fix so "set as default" option is hidden if identities_level > 1 (#1490226) - Fix bug where search was reset after returning from compose visited for reply - Fix javascript error in "IE 8.0/Tablet PC" browser (#1490210) +- Fix bug where empty fieldmap config entries caused empty results of ldap search (#1490229) RELEASE 1.0.4 ------------- diff --git a/program/lib/Roundcube/rcube_ldap.php b/program/lib/Roundcube/rcube_ldap.php index b3872e26b..1f12cae65 100644 --- a/program/lib/Roundcube/rcube_ldap.php +++ b/program/lib/Roundcube/rcube_ldap.php @@ -116,13 +116,14 @@ class rcube_ldap extends rcube_addressbook // fieldmap property is given if (is_array($p['fieldmap'])) { + $p['fieldmap'] = array_filter($p['fieldmap']); foreach ($p['fieldmap'] as $rf => $lf) $this->fieldmap[$rf] = $this->_attr_name(strtolower($lf)); } else if (!empty($p)) { // read deprecated *_field properties to remain backwards compatible foreach ($p as $prop => $value) - if (preg_match('/^(.+)_field$/', $prop, $matches)) + if (!empty($value) && preg_match('/^(.+)_field$/', $prop, $matches)) $this->fieldmap[$matches[1]] = $this->_attr_name(strtolower($value)); } -- cgit v1.2.3