From 460ab486450c2871fcdae63d62ccc1918b907f4d Mon Sep 17 00:00:00 2001 From: baldurk Date: Wed, 25 Apr 2018 18:00:55 +0100 Subject: [PATCH] Escape a literal '&' in filenames, to not create accidental shortcuts --- qrenderdoc/Windows/MainWindow.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/qrenderdoc/Windows/MainWindow.cpp b/qrenderdoc/Windows/MainWindow.cpp index c33569a53..91547586d 100644 --- a/qrenderdoc/Windows/MainWindow.cpp +++ b/qrenderdoc/Windows/MainWindow.cpp @@ -1069,7 +1069,8 @@ void MainWindow::PopulateRecentCaptureFiles() int idx = 1; for(int i = m_Ctx.Config().RecentCaptureFiles.count() - 1; i >= 0; i--) { - const QString &filename = m_Ctx.Config().RecentCaptureFiles[i]; + QString filename = m_Ctx.Config().RecentCaptureFiles[i]; + filename.replace(QLatin1Char('&'), lit("&&")); ui->menu_Recent_Capture_Files->addAction(QFormatStr("&%1 %2").arg(idx).arg(filename), [this, filename] { recentCaptureFile(filename); }); idx++; @@ -1096,7 +1097,8 @@ void MainWindow::PopulateRecentCaptureSettings() int idx = 1; for(int i = m_Ctx.Config().RecentCaptureSettings.count() - 1; i >= 0; i--) { - const QString &filename = m_Ctx.Config().RecentCaptureSettings[i]; + QString filename = m_Ctx.Config().RecentCaptureSettings[i]; + filename.replace(QLatin1Char('&'), lit("&&")); ui->menu_Recent_Capture_Settings->addAction(QFormatStr("&%1 %2").arg(idx).arg(filename), [this, filename] { recentCaptureSetting(filename); }); idx++;