BUG: windows IOobject::path() incorrect from absolute (fixes #1738)

- only checked if it started with '/' and not 'd:/' (for example).
This commit is contained in:
Mark Olesen 2020-06-22 14:22:18 +02:00
parent 8f8617a8ca
commit 4248fdcd96

View File

@ -456,10 +456,19 @@ const Foam::fileName& Foam::IOobject::caseName() const
Foam::fileName Foam::IOobject::path() const
{
// A file is 'outside' of the case if it has been specified using an
// absolute path (starts with '/')
// absolute path
if (instance().starts_with('/'))
const auto first = instance().find('/');
if
(
first == 0
#ifdef _WIN32
|| (first == 2 && instance()[1] == ':') // Eg, d:/path
#endif
)
{
// Absolute path (starts with '/' or 'd:/')
return instance();
}