From ff7bd9fcb2d3ff14928738b0fdbd4b255cc6bb41 Mon Sep 17 00:00:00 2001 From: Basile Burg Date: Sat, 11 Mar 2017 12:19:07 +0100 Subject: [PATCH] win, prevent two cases of case sensitive fname comparison --- src/ce_editor.pas | 2 +- src/ce_mru.pas | 18 ++++++++++++++---- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/ce_editor.pas b/src/ce_editor.pas index a2ea5d72..21a4cc3e 100644 --- a/src/ce_editor.pas +++ b/src/ce_editor.pas @@ -481,7 +481,7 @@ begin for i := 0 to PageControl.PageCount-1 do begin result := getDocument(i); - if result.fileName = fname then + if SameFileName(result.fileName, fname) then exit; end; result := nil; diff --git a/src/ce_mru.pas b/src/ce_mru.pas index f91e7643..c83af190 100644 --- a/src/ce_mru.pas +++ b/src/ce_mru.pas @@ -27,7 +27,7 @@ type published property maxCount: Integer read fMaxCount write setMaxCount; public - constructor Create; virtual; + constructor create; virtual; procedure Insert(index: Integer; const value: string); override; property objectTag: TObject read fObj write fObj; end; @@ -39,6 +39,7 @@ type protected function checkItem(const value: string): boolean; override; public + constructor create; override; procedure assign(source: TPersistent); override; end; @@ -106,7 +107,7 @@ end; function TCEMruList.checkItem(const value: string): boolean; var - i: NativeInt; + i: integer; begin i := indexOf(value); if i = -1 then @@ -143,6 +144,14 @@ begin clearOutOfRange; end; +constructor TCEMRUFileList.create; +begin + inherited; + {$IFDEF WINDOWS} + CaseSensitive := true; + {$ENDIF} +end; + procedure TCEMRUFileList.assign(source: TPersistent); var i: Integer; @@ -224,8 +233,9 @@ procedure TCEMRUProjectList.projClosing(project: ICECommonProject); var fname: string; begin - if project = nil then exit; - // + if project = nil then + exit; + fname := project.filename; if fname.fileExists then Insert(0, fname);