commit - f77a8c867ecc2881d60345b9e1b1ee4259189e9a
commit + 42bbdc7978acc6be9beb5baa7d94fedb7c211b49
blob - 26ee920fc2c12088c713411c936ddd22c5b92749
blob + beba36872d89965202880fa3660a2cb55a581e10
--- iri.c
+++ iri.c
parse_path(struct parser *p)
{
char c;
+
+ /* trim initial slashes */
+ while (*p->iri == '/')
+ p->iri++;
p->parsed->path = p->iri;
if (*p->iri == '\0') {
blob - 81ec0b4d26a7ef7cae39b770bcd0cbb54bfc3c6c
blob + 03c547a2e7cbc5e26c46aa25c177be72ba8b6579
--- iri_test.c
+++ iri_test.c
PASS,
IRI("gemini", "omarpolo.com", "", "", "", ""),
"parse path with lots of cleaning available");
+ TEST("gemini://omarpolo.com//foo",
+ PASS,
+ IRI("gemini", "omarpolo.com", "", "foo", "", ""),
+ "Trim initial slashes");
+ TEST("gemini://omarpolo.com/////foo",
+ PASS,
+ IRI("gemini", "omarpolo.com", "", "foo", "", ""),
+ "Trim initial slashes (pt. 2)");
/* query */
TEST("foo://example.com/foo/?gne",