[Serializer] Fix DataUriNormalizer's regex

This commit is contained in:
Kévin Dunglas 2016-10-24 11:05:30 +02:00 committed by Fabien Potencier
parent c3b96908e7
commit 5dc5dc8475
2 changed files with 4 additions and 1 deletions

View File

@ -85,7 +85,7 @@ class DataUriNormalizer implements NormalizerInterface, DenormalizerInterface
*/
public function denormalize($data, $class, $format = null, array $context = array())
{
if (!preg_match('/^data:([a-z0-9]+\/[a-z0-9]+(;[a-z0-9\-]+\=[a-z0-9\-]+)?)?(;base64)?,[a-z0-9\!\$\&\\\'\,\(\)\*\+\,\;\=\-\.\_\~\:\@\/\?\%\s]*\s*$/i', $data)) {
if (!preg_match('/^data:([a-z0-9][a-z0-9\!\#\$\&\-\^\_\+\.]{0,126}\/[a-z0-9][a-z0-9\!\#\$\&\-\^\_\+\.]{0,126}(;[a-z0-9\-]+\=[a-z0-9\-]+)?)?(;base64)?,[a-z0-9\!\$\&\\\'\,\(\)\*\+\,\;\=\-\.\_\~\:\@\/\?\%\s]*\s*$/i', $data)) {
throw new UnexpectedValueException('The provided "data:" URI is not valid.');
}

File diff suppressed because one or more lines are too long