diff --git a/src/plugins/coreplugin/mainwindow.cpp b/src/plugins/coreplugin/mainwindow.cpp
index 2aa251b4da43b020d27d5156bec9094a899b19c6..aea62962134d29867554cffb3f50fa0234052e55 100644
--- a/src/plugins/coreplugin/mainwindow.cpp
+++ b/src/plugins/coreplugin/mainwindow.cpp
@@ -1138,13 +1138,12 @@ void MainWindow::aboutToShowRecentFiles()
     ActionContainer *aci =
         m_actionManager->actionContainer(Constants::M_FILE_RECENTFILES);
     aci->menu()->clear();
-    m_recentFilesActions.clear();
 
     bool hasRecentFiles = false;
-    foreach (QString s, m_fileManager->recentFiles()) {
+    foreach (const QString &fileName, m_fileManager->recentFiles()) {
         hasRecentFiles = true;
-        QAction *action = aci->menu()->addAction(s);
-        m_recentFilesActions.insert(action, s);
+        QAction *action = aci->menu()->addAction(fileName);
+        action->setData(fileName);
         connect(action, SIGNAL(triggered()), this, SLOT(openRecentFile()));
     }
     aci->menu()->setEnabled(hasRecentFiles);
@@ -1152,9 +1151,12 @@ void MainWindow::aboutToShowRecentFiles()
 
 void MainWindow::openRecentFile()
 {
-    QAction *a = qobject_cast<QAction*>(sender());
-    if (m_recentFilesActions.contains(a)) {
-        editorManager()->openEditor(m_recentFilesActions.value(a));
+    QAction *action = qobject_cast<QAction*>(sender());
+    if (!action)
+        return;
+    QString fileName = action->data().toString();
+    if (!fileName.isEmpty()) {
+        editorManager()->openEditor(fileName);
         editorManager()->ensureEditorManagerVisible();
     }
 }
diff --git a/src/plugins/coreplugin/mainwindow.h b/src/plugins/coreplugin/mainwindow.h
index 9c3744efc2b6f48a38d7252fe1f69915c4c5f267..0c1e413715225bd4814524e9fcf700b9b56a9c35 100644
--- a/src/plugins/coreplugin/mainwindow.h
+++ b/src/plugins/coreplugin/mainwindow.h
@@ -191,8 +191,6 @@ private:
     GeneralSettings *m_generalSettings;
     ShortcutSettings *m_shortcutSettings;
 
-    QMap<QAction*, QString> m_recentFilesActions;
-
     // actions
     QShortcut *m_focusToEditor;
     QAction *m_newAction;