From 4d4544ada3651af7d7c92f0b1b4276ee597a42eb Mon Sep 17 00:00:00 2001 From: Michael Date: Mon, 24 May 2021 20:07:39 +0000 Subject: [PATCH] Separate the char from the binary handling --- src/Database/DBStructure.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Database/DBStructure.php b/src/Database/DBStructure.php index 04ba956bc9..914846590b 100644 --- a/src/Database/DBStructure.php +++ b/src/Database/DBStructure.php @@ -242,8 +242,10 @@ class DBStructure foreach ($fieldnames as $field) { if (isset($data[$field])) { // Limit the length of varchar, varbinary, char and binrary fields - if (is_string($data[$field]) && preg_match("/[char|binary]\((\d*)\)/", $definition[$table]['fields'][$field]['type'], $result)) { + if (is_string($data[$field]) && preg_match("/char\((\d*)\)/", $definition[$table]['fields'][$field]['type'], $result)) { $data[$field] = mb_substr($data[$field], 0, $result[1]); + } elseif (is_string($data[$field]) && preg_match("/binary\((\d*)\)/", $definition[$table]['fields'][$field]['type'], $result)) { + $data[$field] = substr($data[$field], 0, $result[1]); } $fields[$field] = $data[$field]; }