about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSteven Tang <yc@steventang.net>2022-11-20 10:44:16 +1100
committerSteven Tang <yc@steventang.net>2022-11-20 10:48:55 +1100
commita1ea1c128d4e7c53965ae88d8b6ad0305d8c3d65 (patch)
tree74199a1795cc7dd1319f6cc6da4bee17dad9ce3c
parent40b7e0e5254d88e5f20d32e5845a368c9e47b7e5 (diff)
downloadrust-a1ea1c128d4e7c53965ae88d8b6ad0305d8c3d65.tar.gz
rust-a1ea1c128d4e7c53965ae88d8b6ad0305d8c3d65.zip
Check that library is file
-rw-r--r--compiler/rustc_metadata/src/locator.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/compiler/rustc_metadata/src/locator.rs b/compiler/rustc_metadata/src/locator.rs
index bf346c86b58..046125a985a 100644
--- a/compiler/rustc_metadata/src/locator.rs
+++ b/compiler/rustc_metadata/src/locator.rs
@@ -707,6 +707,12 @@ impl<'a> CrateLocator<'a> {
                     loc.original().clone(),
                 ));
             }
+            if !loc.original().is_file() {
+                return Err(CrateError::ExternLocationNotFile(
+                    self.crate_name,
+                    loc.original().clone(),
+                ));
+            }
             let Some(file) = loc.original().file_name().and_then(|s| s.to_str()) else {
                 return Err(CrateError::ExternLocationNotFile(
                     self.crate_name,