diff options
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | program/include/rcube_ldap.php | 9 | ||||
-rw-r--r-- | program/steps/mail/search.inc | 2 |
3 files changed, 9 insertions, 3 deletions
@@ -1,6 +1,7 @@ CHANGELOG Roundcube Webmail =========================== +- Make sure LDAP name fields aren't arrays (#1488108) - Fixed imap test to non-default port when using ssl (#1488118) - Force all files to be overwritten when updating (#1488117) - Fix issue where it wasn't possible to change list view mode in folder manager for INBOX (#1488107) diff --git a/program/include/rcube_ldap.php b/program/include/rcube_ldap.php index 55c8c154f..a3f6dc56d 100644 --- a/program/include/rcube_ldap.php +++ b/program/include/rcube_ldap.php @@ -72,7 +72,7 @@ class rcube_ldap extends rcube_addressbook function __construct($p, $debug=false, $mail_domain=NULL) { $this->prop = $p; - + if (isset($p['searchonly'])) $this->searchonly = $p['searchonly']; @@ -447,7 +447,7 @@ class rcube_ldap extends rcube_addressbook $this->result->searchonly = true; return $this->result; } - + // add general filter to query if (!empty($this->prop['filter']) && empty($this->filter)) { @@ -1031,6 +1031,11 @@ class rcube_ldap extends rcube_addressbook else $out[$rf] = $value; } + + // Make sure name fields aren't arrays (#1488108) + if (is_array($out[$rf]) && in_array($rf, array('name', 'surname', 'firstname', 'middlename', 'nickname'))) { + $out[$rf] = $out[$rf][0]; + } } return $out; diff --git a/program/steps/mail/search.inc b/program/steps/mail/search.inc index d34454ff1..2e7fd130c 100644 --- a/program/steps/mail/search.inc +++ b/program/steps/mail/search.inc @@ -78,7 +78,7 @@ else if(trim($str)) case 'text': $subject['text'] = 'TEXT'; break; default: $subject[$header] = 'HEADER '.strtoupper($header); } - + // save search modifiers for the current folder to user prefs $search_mods = $RCMAIL->config->get('search_mods', $SEARCH_MODS_DEFAULT); $search_mods[$mbox] = array_fill_keys(array_keys($subject), 1); |