diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 7c5e5a1f0..948c0c6a0 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -53,6 +53,7 @@ jobs:
if: |
matrix.rust == '1.82.0'
run: |
+ cargo update -p idna_adapter --precise 1.2.1
cargo update -p icu_normalizer --precise 2.0.1
cargo update -p icu_provider --precise 2.0.0
cargo update -p icu_locale_core --precise 2.0.1
diff --git a/url/src/parser.rs b/url/src/parser.rs
index dbdf9b906..e4ca557c0 100644
--- a/url/src/parser.rs
+++ b/url/src/parser.rs
@@ -529,9 +529,8 @@ impl Parser<'_> {
self.serialization.push_str("file://");
let scheme_end = "file".len() as u32;
let host_start = "file://".len() as u32;
- let (path_start, mut host, remaining) =
- self.parse_file_host(input_after_next_char)?;
- let mut host_end = to_u32(self.serialization.len())?;
+ let (path_start, host, remaining) = self.parse_file_host(input_after_next_char)?;
+ let host_end = to_u32(self.serialization.len())?;
let mut has_host = !matches!(host, HostInternal::None);
let remaining = if path_start {
self.parse_path_start(SchemeType::File, &mut has_host, remaining)
@@ -541,14 +540,6 @@ impl Parser<'_> {
self.parse_path(SchemeType::File, &mut has_host, path_start, remaining)
};
- // For file URLs that have a host and whose path starts
- // with the windows drive letter we just remove the host.
- if !has_host {
- self.serialization
- .drain(host_start as usize..host_end as usize);
- host_end = host_start;
- host = HostInternal::None;
- }
let (query_start, fragment_start) =
self.parse_query_and_fragment(scheme_type, scheme_end, remaining)?;
return Ok(Url {
diff --git a/url/tests/expected_failures.txt b/url/tests/expected_failures.txt
index 8d4407c45..75b6ab7cb 100644
--- a/url/tests/expected_failures.txt
+++ b/url/tests/expected_failures.txt
@@ -19,9 +19,6 @@
against
against
against
-
-
-
against
against
against