diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/context.h | 12 | ||||
-rw-r--r-- | src/textual.cc | 5 |
2 files changed, 8 insertions, 9 deletions
diff --git a/src/context.h b/src/context.h index 09734b3e..7373be39 100644 --- a/src/context.h +++ b/src/context.h @@ -112,16 +112,16 @@ inline parse_context_t open_for_reading(const path& pathname, const path& cwd) { path filename = resolve_path(pathname); - +#if BOOST_VERSION >= 104600 && BOOST_FILESYSTEM_VERSION >= 3 + filename = filesystem::absolute(filename, cwd); +#else + filename = filesystem::complete(filename, cwd); +#endif if (! exists(filename)) throw_(std::runtime_error, _f("Cannot read journal file %1%") % filename); -#if BOOST_VERSION >= 104600 && BOOST_FILESYSTEM_VERSION >= 3 - path parent(filesystem::absolute(pathname, cwd).parent_path()); -#else - path parent(filesystem::complete(pathname, cwd).parent_path()); -#endif + path parent(pathname.parent_path()); shared_ptr<std::istream> stream(new ifstream(filename)); parse_context_t context(stream, parent); context.pathname = filename; diff --git a/src/textual.cc b/src/textual.cc index a5ae2f68..0ead9232 100644 --- a/src/textual.cc +++ b/src/textual.cc @@ -532,9 +532,8 @@ void instance_t::option_directive(char * line) *p++ = '\0'; } - path abs_path(filesystem::absolute(context.pathname, - context.current_directory)); - if (! process_option(abs_path.string(), line + 2, *context.scope, p, line)) + if (! process_option(context.pathname.string(), line + 2, *context.scope, + p, line)) throw_(option_error, _f("Illegal option --%1%") % (line + 2)); } |