From 119ea80735314fc416bc32a7503345eda0693e86 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint <Friedemann.Kleint@nokia.com> Date: Tue, 15 Dec 2009 10:21:02 +0100 Subject: [PATCH] Debugger: Ignore case of file name in breakpoint handling on Windows. Task-number: QTCREATORBUG-438 --- src/plugins/debugger/breakhandler.cpp | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/plugins/debugger/breakhandler.cpp b/src/plugins/debugger/breakhandler.cpp index e0b397fcef5..b207360bd72 100644 --- a/src/plugins/debugger/breakhandler.cpp +++ b/src/plugins/debugger/breakhandler.cpp @@ -49,6 +49,18 @@ using namespace Debugger::Internal; // ////////////////////////////////////////////////////////////////// +// Compare file names case insensitively on Windows. +static inline bool fileNameMatch(const QString &f1, const QString &f2) +{ + return f1.compare(f2, +#ifdef Q_OS_WIN + Qt::CaseInsensitive +#else + Qt::CaseSensitive +#endif + ) == 0; +} + namespace Debugger { namespace Internal { @@ -236,7 +248,7 @@ bool BreakpointData::isLocatedAt(const QString &fileName_, int lineNumber_) cons return true; return false; */ - return lineNumber_ == markerLineNumber && fileName_ == markerFileName; + return lineNumber_ == markerLineNumber && fileNameMatch(fileName_, markerFileName); } bool BreakpointData::conditionsMatch() const @@ -310,7 +322,7 @@ int BreakHandler::findBreakpoint(const BreakpointData &needle) return index; // at least at a position we were looking for // FIXME: breaks multiple breakpoints at the same location - if (data->fileName == needle.bpFileName + if (fileNameMatch(data->fileName, needle.bpFileName) && data->lineNumber == needle.bpLineNumber) return index; } -- GitLab