diff --git a/src/plugins/projectexplorer/session.cpp b/src/plugins/projectexplorer/session.cpp
index cf0d79f8e01fee9f7f1425ce4b786bbe5a8de195..d7d4d93d62b9a89517aa9699ae30c783b244512c 100644
--- a/src/plugins/projectexplorer/session.cpp
+++ b/src/plugins/projectexplorer/session.cpp
@@ -638,7 +638,9 @@ bool SessionManager::loadImpl(const QString &fileName)
                                     tr("Could not load session %1").arg(fileName));
             success = false;
         }
-        setStartupProject(m_file->m_startupProject);
+        // m_file->load() sets the m_file->startupProject
+        // but doesn't emit this signal, so we do it here
+        emit startupProjectChanged(m_file->m_startupProject);
     }
 
     if (success) {