IDE, project: save selected debugger to session, not lpi

(cherry picked from commit 2ad53a8a51)
This commit is contained in:
Martin 2021-12-08 00:42:53 +01:00
parent a3b83a43dc
commit 8f2965307f

View File

@ -3028,6 +3028,7 @@ begin
// load session info
LoadSessionInfo(Path,false);
// This is for backward compatibility (only trunk 2.1 did use this / Can be removed in some time after 2.2 / but needs LoadFromSession to change default to '')
FDebuggerBackend := FXMLConfig.GetValue(Path+'Debugger/Backend/Value', '');
// call hooks to read their info (e.g. DebugBoss)
@ -3062,6 +3063,9 @@ begin
if FFileVersion>=12 then
HistoryLists.LoadFromXMLConfig(FXMLConfig,Path+'HistoryLists/');
// Load from LPI will have been called first => so if session has no value, we keep the LPI value (as for some time, the data was stored in the LPI)
FDebuggerBackend := FXMLConfig.GetValue(Path+'Debugger/Backend/Value', FDebuggerBackend);
// call hooks to read their info (e.g. DebugBoss)
if Assigned(OnLoadProjectInfo) then
OnLoadProjectInfo(Self,FXMLConfig,true);
@ -3355,7 +3359,7 @@ begin
// save units
SaveUnits(Path,FSaveSessionInLPI);
FXMLConfig.SetDeleteValue(Path+'Debugger/Backend/Value', DebuggerBackend, '');
FXMLConfig.DeletePath(Path+'Debugger'); // remove old value from trunk 2.1
if FSaveSessionInLPI then begin
// save defines used for custom options
@ -3410,6 +3414,8 @@ begin
BuildModes.SaveSessionData(Path);
// save all units
SaveUnits(Path,true);
FXMLConfig.SetDeleteValue(Path+'Debugger/Backend/Value', DebuggerBackend, '');
// save defines used for custom options
SaveOtherDefines(Path);
// save session info