diff options
Diffstat (limited to 'src/librustc/plugin')
| -rw-r--r-- | src/librustc/plugin/load.rs | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/librustc/plugin/load.rs b/src/librustc/plugin/load.rs index a419d4134b4..8267b79ff9e 100644 --- a/src/librustc/plugin/load.rs +++ b/src/librustc/plugin/load.rs @@ -14,10 +14,12 @@ use session::Session; use metadata::creader::CrateReader; use plugin::registry::Registry; -use std::mem; -use std::os; -use std::dynamic_lib::DynamicLibrary; use std::borrow::ToOwned; +use std::dynamic_lib::DynamicLibrary; +use std::env; +use std::mem; +use std::old_path; +use std::path::PathBuf; use syntax::ast; use syntax::codemap::{Span, COMMAND_LINE_SP}; use syntax::ptr::P; @@ -100,10 +102,11 @@ impl<'a> PluginLoader<'a> { // Dynamically link a registrar function into the compiler process. fn dylink_registrar(&mut self, span: Span, - path: Path, + path: PathBuf, symbol: String) -> PluginRegistrarFun { // Make sure the path contains a / or the linker will search for it. - let path = os::getcwd().unwrap().join(&path); + let path = env::current_dir().unwrap().join(&path); + let path = old_path::Path::new(path.to_str().unwrap()); let lib = match DynamicLibrary::open(Some(&path)) { Ok(lib) => lib, |
