summaryrefslogtreecommitdiffstats
path: root/lldb/source/Host/common/FileSpec.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Host/common/FileSpec.cpp')
-rw-r--r--lldb/source/Host/common/FileSpec.cpp24
1 files changed, 17 insertions, 7 deletions
diff --git a/lldb/source/Host/common/FileSpec.cpp b/lldb/source/Host/common/FileSpec.cpp
index 281a9df96f1..b8d35480d0f 100644
--- a/lldb/source/Host/common/FileSpec.cpp
+++ b/lldb/source/Host/common/FileSpec.cpp
@@ -390,19 +390,29 @@ FileSpec::operator!() const
return !m_directory && !m_filename;
}
+bool
+FileSpec::DirectoryEquals(const FileSpec &rhs) const
+{
+ const bool case_sensitive = IsCaseSensitive() || rhs.IsCaseSensitive();
+ return ConstString::Equals(m_directory, rhs.m_directory, case_sensitive);
+}
+
+bool
+FileSpec::FileEquals(const FileSpec &rhs) const
+{
+ const bool case_sensitive = IsCaseSensitive() || rhs.IsCaseSensitive();
+ return ConstString::Equals(m_filename, rhs.m_filename, case_sensitive);
+}
+
//------------------------------------------------------------------
// Equal to operator
//------------------------------------------------------------------
bool
FileSpec::operator== (const FileSpec& rhs) const
{
- // case sensitivity of equality test
- const bool case_sensitive = IsCaseSensitive() || rhs.IsCaseSensitive();
-
- if (!ConstString::Equals(m_filename, rhs.m_filename, case_sensitive))
+ if (!FileEquals(rhs))
return false;
-
- if (ConstString::Equals(m_directory, rhs.m_directory, case_sensitive))
+ if (DirectoryEquals(rhs))
return true;
// TODO: determine if we want to keep this code in here.
@@ -451,7 +461,7 @@ FileSpec::operator== (const FileSpec& rhs) const
// If we reach this point in the code we were able to resolve both paths
// and since we only resolve the paths if the basenames are equal, then
// we can just check if both directories are equal...
- return ConstString::Equals(m_directory, rhs.m_directory, case_sensitive);
+ return DirectoryEquals(rhs);
}
//------------------------------------------------------------------
OpenPOWER on IntegriCloud