represent the current_dir as an absolute path, not a relative one. (#262)

This commit is contained in:
Mark Thom
2020-03-07 16:00:04 -07:00
parent 6ddfef6383
commit c7591045af
3 changed files with 13 additions and 6 deletions

View File

@@ -548,8 +548,8 @@ fn add_module(
term_dir: TermDir,
) {
module.code_dir.extend(indices.code_dir);
module.op_dir.extend(indices.op_dir.into_iter());
module.term_dir.extend(term_dir.into_iter());
module.op_dir.extend(indices.op_dir);
module.term_dir.extend(term_dir);
wam.add_in_situ_module_dir(indices.module_dir);
wam.add_module(module);
@@ -568,7 +568,7 @@ fn add_non_module_code(
clause_code_generator.generate_clause_code(&dynamic_clause_map, wam)?;
add_toplevel(wam, indices, term_dir);
wam.code_repo.code.extend(code.into_iter());
wam.code_repo.code.extend(code);
clause_code_generator.add_clause_code(wam, dynamic_clause_map);
Ok(())

View File

@@ -193,8 +193,11 @@ impl SubModuleUser for IndexStore {
#[inline]
fn current_dir() -> std::path::PathBuf {
let mut path_buf = std::path::PathBuf::from(file!());
path_buf.pop();
let mut path_buf = std::path::PathBuf::from(PROJECT_DIR);
// file!() always produces a path relative to PROJECT_DIR.
path_buf = path_buf.join(std::path::PathBuf::from(file!()));
path_buf.pop();
path_buf
}