diff --git a/bollux b/bollux index 668930e..4a8db07 100755 --- a/bollux +++ b/bollux @@ -477,7 +477,9 @@ ujoin() { # ujoin URL_ARRAY printf -v URL_ARRAY[0] "%s:" "${URL_ARRAY[1]}" fi - if ucdef URL_ARRAY[2]; then + # Need special casing for file: protocol: + # https://datatracker.ietf.org/doc/html/rfc1738#section-3.10 + if ucdef URL_ARRAY[2] || [[ "${URL_ARRAY[1]}" == file ]]; then printf -v URL_ARRAY[0] "${URL_ARRAY[0]}//%s" "${URL_ARRAY[2]}" fi