From 95afe5ceadec1bf8a33775fac478fbd2579fac69 Mon Sep 17 00:00:00 2001 From: Marc Durdin Date: Fri, 11 May 2018 10:56:36 +0700 Subject: [PATCH] Opening an editor by double-clicking a message in the message window can crash Developer --- windows/src/developer/TIKE/main/UfrmMessages.pas | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/windows/src/developer/TIKE/main/UfrmMessages.pas b/windows/src/developer/TIKE/main/UfrmMessages.pas index e8bcc0124c..84e4842478 100644 --- a/windows/src/developer/TIKE/main/UfrmMessages.pas +++ b/windows/src/developer/TIKE/main/UfrmMessages.pas @@ -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.');