From 46b6c5475bf2b188e04c1e0a5fe8a9e387ecda80 Mon Sep 17 00:00:00 2001 From: Aleksander Machniak Date: Mon, 4 Jun 2012 10:11:24 +0200 Subject: Modify CONCAT() arguments, because + operator requires them to be of type varchar (#1488505) With SQL Server 2012 we can use just CONCAT(), but we need to support older versions --- CHANGELOG | 1 + program/include/rcube_mdb2.php | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/CHANGELOG b/CHANGELOG index 0a9f2ba17..4a275beb3 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,7 @@ CHANGELOG Roundcube Webmail =========================== +- Fix SQL query for contacts listing on MS SQL Server (#1488505) - Update to TinyMCE 3.5.2 - Fix window.resize handler on IE8 and Opera (#1488453) - Don't let error message popups cover the login form (#1488500) diff --git a/program/include/rcube_mdb2.php b/program/include/rcube_mdb2.php index a255d9e6e..721963b4c 100644 --- a/program/include/rcube_mdb2.php +++ b/program/include/rcube_mdb2.php @@ -691,6 +691,11 @@ class rcube_mdb2 case 'mssql': case 'sqlsrv': $delim = ' + '; + // Modify arguments, because + operator requires them to be of type varchar (#1488505) + // with SQL Server 2012 we can use just CONCAT(), but we need to support older versions + foreach ($args as $idx => $arg) { + $args[$idx] = "CAST($arg AS varchar)"; + } break; default: $delim = ' || '; -- cgit v1.2.3