diff options
author | Jeffrey Armstrong <jeff@approximatrix.com> | 2020-05-07 14:49:34 -0400 |
---|---|---|
committer | Jeffrey Armstrong <jeff@approximatrix.com> | 2020-05-07 14:49:34 -0400 |
commit | 4cd4c15f1bbe35e5544cd706f327b4a1b32bc493 (patch) | |
tree | bb9de8c2188117413448e2815b7adaa33d59844e /protocol.f90 | |
parent | a817aaade595cc09f09545f3154cd069f7d12ae5 (diff) | |
download | LR-87-4cd4c15f1bbe35e5544cd706f327b4a1b32bc493.tar.gz LR-87-4cd4c15f1bbe35e5544cd706f327b4a1b32bc493.zip |
Fixed some more URL handling issues.
Diffstat (limited to 'protocol.f90')
-rw-r--r-- | protocol.f90 | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/protocol.f90 b/protocol.f90 index 3348663..8f0cd70 100644 --- a/protocol.f90 +++ b/protocol.f90 @@ -265,8 +265,11 @@ contains end if end if - if(present(once) .and. once) then - exit + ! All on the same line crashes GNU Fortran... + if(present(once)) then + if(once) then + exit + end if end if i = index(string, pattern) @@ -301,7 +304,12 @@ contains exit end if - call replace_text(url, url(pattern_start:i+2), once=.true.) + ! Check for root... + if(url(pattern_start-1:pattern_start) == "//") then + call replace_text(url, "/../", replacement="/", once=.true.) + else + call replace_text(url, url(pattern_start:i+2), once=.true.) + end if i = index(url, '/../') end do |