-
-
Notifications
You must be signed in to change notification settings - Fork 74
Open
Labels
BugSomething isn't workingSomething isn't working
Description
Bug Report
| Q | A |
|---|---|
| Version(s) | Current git 3.3.x |
Summary
The Uri class is able to parse malformed URIs but this results in Uri::__toString() generating a malformed URI. Attempting to pass that URI back into Uri will yield a InvalidArgumentException.
Current behavior
Certain malformed URIs do not round-trip through \Laminas\Diactoros\Uri.
How to reproduce
<?php
require('vendor/autoload.php');
$value = 'http://invalid:%20https://example.com';
$uri = new \Laminas\Diactoros\Uri($value);
$uri2 = new \Laminas\Diactoros\Uri($uri->__toString()); // Exception is thrown here.Expected behavior
Either both constructors throw, or neither.
Note: This issue also exists in guzzlehttp/psr7 and was reported at guzzle/psr7#583.
Metadata
Metadata
Assignees
Labels
BugSomething isn't workingSomething isn't working