From 5b0a68d1e09b666edc8fdb21f7888174244a843f Mon Sep 17 00:00:00 2001 From: Seamus Lee Date: Thu, 2 Nov 2023 10:20:11 +1100 Subject: [PATCH] [REF] dev/core#4747 Fix Binary Regex by casting field to Binary --- Civi/Api4/Query/Api4Query.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Civi/Api4/Query/Api4Query.php b/Civi/Api4/Query/Api4Query.php index 4f13808e93..73f0e9eb66 100644 --- a/Civi/Api4/Query/Api4Query.php +++ b/Civi/Api4/Query/Api4Query.php @@ -404,7 +404,7 @@ abstract class Api4Query { } if ($operator == 'REGEXP' || $operator == 'NOT REGEXP' || $operator == 'REGEXP BINARY' || $operator == 'NOT REGEXP BINARY') { - return sprintf('%s %s "%s"', $fieldAlias, $operator, \CRM_Core_DAO::escapeString($value)); + return sprintf('%s %s "%s"', (str_ends_with($operator, 'BINARY') ? 'CAST(' . $fieldAlias . ' AS BINARY)' : $fieldAlias), $operator, \CRM_Core_DAO::escapeString($value)); } if (!$value && ($operator === 'IN' || $operator === 'NOT IN')) { -- 2.25.1