Skip to content

Commit 5ff6bee

Browse files
committed
rustc: One Less Bad Copy
1 parent 72c04a9 commit 5ff6bee

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/librustc/metadata/filesearch.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -148,10 +148,12 @@ fn get_cargo_root_nearest() -> Result<Path, ~str> {
148148
do result::chain(get_cargo_root()) |p| {
149149
let cwd = os::getcwd();
150150
let cwd_cargo = cwd.push(".cargo");
151+
let cargo_is_non_root_file =
152+
!os::path_is_dir(&cwd_cargo) && cwd_cargo != p;
151153
let mut par_cargo = cwd.pop().push(".cargo");
152-
let mut rslt = result::Ok(copy cwd_cargo); // XXX: Bad copy.
154+
let mut rslt = result::Ok(cwd_cargo);
153155

154-
if !os::path_is_dir(&cwd_cargo) && cwd_cargo != p {
156+
if cargo_is_non_root_file {
155157
while par_cargo != p {
156158
if os::path_is_dir(&par_cargo) {
157159
rslt = result::Ok(par_cargo);

0 commit comments

Comments
 (0)