diff --git a/src/plugins/qmlprofiler/qmlprofilertool.cpp b/src/plugins/qmlprofiler/qmlprofilertool.cpp index 72cb64a40f0..b4e5d5c6b35 100644 --- a/src/plugins/qmlprofiler/qmlprofilertool.cpp +++ b/src/plugins/qmlprofiler/qmlprofilertool.cpp @@ -242,12 +242,13 @@ void QmlProfilerTool::stopRecording() d->m_traceWindow->setRecording(false); } -void QmlProfilerTool::gotoSourceLocation(const QString &fileName, int lineNumber) +void QmlProfilerTool::gotoSourceLocation(const QString &fileUrl, int lineNumber) { - if (lineNumber < 0 || !QFile::exists(QUrl(fileName).toLocalFile())) + if (lineNumber < 0 || fileUrl.isEmpty()) return; - QString projectFileName = d->m_projectFinder.findFile(fileName); + const QString fileName = QUrl(fileUrl).toLocalFile(); + const QString projectFileName = d->m_projectFinder.findFile(fileName); Core::EditorManager *editorManager = Core::EditorManager::instance(); Core::IEditor *editor = editorManager->openEditor(projectFileName); diff --git a/src/plugins/qmlprofiler/qmlprofilertool.h b/src/plugins/qmlprofiler/qmlprofilertool.h index 09e95e70c5f..949d67dd350 100644 --- a/src/plugins/qmlprofiler/qmlprofilertool.h +++ b/src/plugins/qmlprofiler/qmlprofilertool.h @@ -65,7 +65,7 @@ public slots: void stopRecording(); - void gotoSourceLocation(const QString &fileName, int lineNumber); + void gotoSourceLocation(const QString &fileUrl, int lineNumber); void updateTimer(qreal elapsedSeconds); signals: diff --git a/src/plugins/qmlprofiler/tracewindow.h b/src/plugins/qmlprofiler/tracewindow.h index e0a89b75370..c1b80858294 100644 --- a/src/plugins/qmlprofiler/tracewindow.h +++ b/src/plugins/qmlprofiler/tracewindow.h @@ -73,7 +73,7 @@ public slots: signals: void viewUpdated(); - void gotoSourceLocation(const QString &fileName, int lineNumber); + void gotoSourceLocation(const QString &fileUrl, int lineNumber); void timeChanged(qreal newTime); private: