diff --git a/src/plugins/debugger/breakpoint.cpp b/src/plugins/debugger/breakpoint.cpp index 4faf6a8a668..3f29c2a2a09 100644 --- a/src/plugins/debugger/breakpoint.cpp +++ b/src/plugins/debugger/breakpoint.cpp @@ -272,6 +272,7 @@ void BreakpointParameters::updateFromGdbOutput(const GdbMi &bkpt, const Utils::F QTC_ASSERT(bkpt.isValid(), return); QString originalLocation; + QString reportedLocation; QString file; QString fullName; @@ -308,7 +309,7 @@ void BreakpointParameters::updateFromGdbOutput(const GdbMi &bkpt, const Utils::F // Any content here would be interesting only if we did accept // spontaneously appearing breakpoints (user using gdb commands). if (file.isEmpty()) - file = child.data(); + reportedLocation = child.data(); pending = true; } else if (child.hasName("at")) { // Happens with gdb 6.4 symbianelf. @@ -371,6 +372,9 @@ void BreakpointParameters::updateFromGdbOutput(const GdbMi &bkpt, const Utils::F if (!name.isEmpty()) fileName = fileRoot.withNewPath(name); + if (fileName.isEmpty()) + updateLocation(reportedLocation); + if (fileName.isEmpty()) updateLocation(originalLocation); }