Too long text entries when saving media lead to an error message
authorMarcel Werk <burntime@woltlab.com>
Mon, 13 Apr 2020 12:15:04 +0000 (14:15 +0200)
committerMarcel Werk <burntime@woltlab.com>
Mon, 13 Apr 2020 12:15:04 +0000 (14:15 +0200)
wcfsetup/install/files/lib/data/media/MediaAction.class.php

index 57b37f6dc9c8110e42d35308c15ce1f2f4b001d2..2baf5a343f481f3bb3bc2343f541083902bc43ce 100644 (file)
@@ -347,9 +347,9 @@ class MediaAction extends AbstractDatabaseObjectAction implements ISearchAction,
                                $statement->execute([
                                        $media->mediaID,
                                        $languageID,
-                                       isset($this->parameters['title'][$languageID]) ? $this->parameters['title'][$languageID] : '',
+                                       isset($this->parameters['title'][$languageID]) ? mb_substr($this->parameters['title'][$languageID], 0, 255) : '',
                                        isset($this->parameters['caption'][$languageID]) ? $this->parameters['caption'][$languageID] : '',
-                                       isset($this->parameters['altText'][$languageID]) ? $this->parameters['altText'][$languageID] : ''
+                                       isset($this->parameters['altText'][$languageID]) ? mb_substr($this->parameters['altText'][$languageID], 0, 255) : ''
                                ]);
                        }
                        else {
@@ -374,9 +374,9 @@ class MediaAction extends AbstractDatabaseObjectAction implements ISearchAction,
                                        $statement->execute([
                                                $media->mediaID,
                                                $language->languageID,
-                                               $title,
+                                               mb_substr($title, 0, 255),
                                                $caption,
-                                               $altText
+                                               mb_substr($altText, 0, 255)
                                        ]);
                                }
                        }