diff --git a/packages/fpmkunit/src/fpmkunit.pp b/packages/fpmkunit/src/fpmkunit.pp index 9572af4ea4..70b51d34e9 100644 --- a/packages/fpmkunit/src/fpmkunit.pp +++ b/packages/fpmkunit/src/fpmkunit.pp @@ -6199,8 +6199,18 @@ Var {$endif UNIX} begin { First delete file on Darwin OS to avoid codesign issues } - if (Defaults.SourceOS=Darwin) and FileExists(Dest) then - SysDeleteFile(Dest); + if (Defaults.SourceOS=Darwin) then + begin + D:=IncludeTrailingPathDelimiter(Dest); + If DirectoryExists(D) then + begin + D:=D+ExtractFileName(Src); + if FileExists(D) then + SysDeleteFile(D); + end + else if FileExists(Dest) then + SysDeleteFile(Dest); + end; Log(vlInfo,SInfoCopyingFile,[Src,Dest]); FIn:=TFileStream.Create(Src,fmopenRead or fmShareDenyNone); Try