From bf270e170f635886f6360e72289259dc97a8e09b Mon Sep 17 00:00:00 2001 From: baldurk Date: Thu, 26 Apr 2018 11:34:54 +0100 Subject: [PATCH] Don't mutate actual filenames - just menu text to escape & --- qrenderdoc/Windows/MainWindow.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/qrenderdoc/Windows/MainWindow.cpp b/qrenderdoc/Windows/MainWindow.cpp index 6a17fac99..7e510dd82 100644 --- a/qrenderdoc/Windows/MainWindow.cpp +++ b/qrenderdoc/Windows/MainWindow.cpp @@ -1070,8 +1070,9 @@ void MainWindow::PopulateRecentCaptureFiles() for(int i = m_Ctx.Config().RecentCaptureFiles.count() - 1; i >= 0; 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), + QString filenameDisplay = filename; + filenameDisplay.replace(QLatin1Char('&'), lit("&&")); + ui->menu_Recent_Capture_Files->addAction(QFormatStr("&%1 %2").arg(idx).arg(filenameDisplay), [this, filename] { recentCaptureFile(filename); }); idx++; @@ -1098,8 +1099,9 @@ void MainWindow::PopulateRecentCaptureSettings() for(int i = m_Ctx.Config().RecentCaptureSettings.count() - 1; i >= 0; 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), + QString filenameDisplay = filename; + filenameDisplay.replace(QLatin1Char('&'), lit("&&")); + ui->menu_Recent_Capture_Settings->addAction(QFormatStr("&%1 %2").arg(idx).arg(filenameDisplay), [this, filename] { recentCaptureSetting(filename); }); idx++;