Commits
- Commit:
1a69f47149d069693500a0b99c5022959fc5e506
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri_setquery: avoid needless else block
- Commit:
14728991efc684e1da5955f58ca7810cdafac378
- From:
- Omar Polo <op@omarpolo.com>
- Date:
add missing #include "compat.h"
- Commit:
7bcbb606cd3fc34596f76643e2dd808c0dea09e6
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: refactor parse_{query,fragment} into a single function
- Commit:
e32788429f6cf0fd61336ed3eadccfc59f17dbbc
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: copy portstr too
- Commit:
69942b73fa48871099028f5c6370c4493d3691cb
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: make mergepath take a buffer and strings, not the iri pointers
- Commit:
d2d73a094eb58f7ecf091d401f4d33ca905e17cd
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: change remove_dot_segmens to take a buffer instead of an iri
- Commit:
6d0918263815f42917efe14158e8f1c21b1aae22
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: zero iri_flags before parsing
- Commit:
21fc67ae053c5b9471bbf16e990cfccdefa9c029
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: use a temp buffer for %enc in iri_setquery
- Commit:
a2785a57c07c946ec9269b0871f858fa863d4e6e
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: implement iri_setquery
- Commit:
870edfb9f7fcd981eb681c9c59072f82c9a6891f
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: fix port parsing
- Commit:
a165601e7e2641edcf7b36be8ce9c03ab281fd99
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: support framents and enable fragments tests
- Commit:
8b2b06b5122892c74e4dd58772be73ea2fd2933b
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: rewrite remove_dot_segments to be clearer
the previous version was straight out RFC3986 (more or less, it had a
bug I didn't spot), but it's ugly and extremely long. Rewrite it to be
somewhat inspired by canonpath (from kern_pledge.c) and way simpler.
There are some small differences in how UNIX paths and URLs paths are
canonized (in UNIX path you don't care too much of a trailing '/', in
URLs you do.)
The new code is more clear and passes all the tests in RFC3986, so I'm
calling it a win.
- Commit:
cb7621af57ac2abad12fa61893d00199daebdd29
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: fix remove_dot_segments algorithm
i've misread the description in the RFC; we should copy up to, but not
including, the next '/' at the end and manually inject some '/' in some
other cases.
- Commit:
a9eac73439353c3222a01235919b74a0ba6dc483
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: fix remove_dot_segments: should copy until (including) "/"
- Commit:
30398ec1cb13001ad23b1cb8c6d3e2e93796da2f
- From:
- Omar Polo <op@omarpolo.com>
- Date:
iri: fix typo: should check the first two characters, not three