Opening an editor by double-clicking a message in the message window can crash Developer

This commit is contained in:
Marc Durdin 2018-05-11 10:56:36 +07:00
parent c8750776eb
commit 95afe5cead

View file

@ -145,6 +145,7 @@ var
frm: TForm;
pf: TProjectFile;
mi: TMessageItem;
FFilename: string;
line: Integer;
begin
line := SelLine; if line < 0 then Exit;
@ -152,13 +153,15 @@ begin
SelLine := line;
mi := FMessageItems[line] as TMessageItem;
frm := frmKeymanDeveloper.FindEditorByFileName(mi.FileName);
FFilename := mi.FileName;
frm := frmKeymanDeveloper.FindEditorByFileName(FFileName);
if not Assigned(frm) then
begin
pf := FGlobalProject.FindFile(mi.FileName);
pf := FGlobalProject.FindFile(FFileName);
if Assigned(pf) then (pf.UI as TProjectFileUI).DefaultEvent(Self) // I4687
else frmKeymanDeveloper.OpenFile(mi.FileName, False);
frm := frmKeymanDeveloper.FindEditorByFileName(mi.FileName);
else frmKeymanDeveloper.OpenFile(FFileName, False);
frm := frmKeymanDeveloper.FindEditorByFileName(FFileName);
if not Assigned(frm) then
begin
ShowMessage('Could not find source file editor.');