From ac191bef88bd358bc1b2c4c169d97a80d47dfd7e Mon Sep 17 00:00:00 2001 From: larinsv Date: Wed, 5 Jan 2022 03:05:03 +0300 Subject: [PATCH] FIX: FPC 3.3 compatibility --- components/doublecmd/dcdatetimeutils.pas | 2 +- plugins/wcx/unrar/src/unrarfunc.pas | 3 +++ src/dmcommondata.pas | 4 ++-- src/filesources/filesystem/ufilesystemutil.pas | 8 +++++--- .../wcxarchive/uwcxarchivecopyoutoperation.pas | 8 +++++--- src/filesources/wfxplugin/uwfxpluginutil.pas | 8 +++++--- src/fmain.pas | 2 +- src/ufilefunctions.pas | 2 +- 8 files changed, 23 insertions(+), 14 deletions(-) diff --git a/components/doublecmd/dcdatetimeutils.pas b/components/doublecmd/dcdatetimeutils.pas index fa901f4dbd..90f6847d3e 100644 --- a/components/doublecmd/dcdatetimeutils.pas +++ b/components/doublecmd/dcdatetimeutils.pas @@ -31,7 +31,7 @@ interface {$IF DEFINED(MSWINDOWS)} , Windows {$ELSEIF DEFINED(UNIX)} - , UnixUtil, DCUnix + , Unix, UnixUtil, DCUnix {$ENDIF} ; diff --git a/plugins/wcx/unrar/src/unrarfunc.pas b/plugins/wcx/unrar/src/unrarfunc.pas index c627d923a9..a6ddb69b50 100644 --- a/plugins/wcx/unrar/src/unrarfunc.pas +++ b/plugins/wcx/unrar/src/unrarfunc.pas @@ -25,6 +25,9 @@ unit UnRARFunc; {$mode objfpc}{$H+} +{$ifndef VER3_2} +{$modeswitch arraytodynarray} +{$endif} {$include calling.inc} interface diff --git a/src/dmcommondata.pas b/src/dmcommondata.pas index 8c51612c2a..0901bc3b8f 100644 --- a/src/dmcommondata.pas +++ b/src/dmcommondata.pas @@ -40,7 +40,7 @@ TdmComData = class(TDataModule) SaveDialog: TSaveDialog; procedure DataModuleCreate(Sender: TObject); private - procedure LoadImages(Images: TImageList; ANames: TStringArray); + procedure LoadImages(Images: TImageList; const ANames: array of String); public { public declarations } end; @@ -145,7 +145,7 @@ procedure TdmComData.DataModuleCreate(Sender: TObject); end; end; -procedure TdmComData.LoadImages(Images: TImageList; ANames: TStringArray); +procedure TdmComData.LoadImages(Images: TImageList; const ANames: array of String); var AName: String; ASize16, ASize24: Integer; diff --git a/src/filesources/filesystem/ufilesystemutil.pas b/src/filesources/filesystem/ufilesystemutil.pas index 7a04c77b64..8cdb4bb42d 100644 --- a/src/filesources/filesystem/ufilesystemutil.pas +++ b/src/filesources/filesystem/ufilesystemutil.pas @@ -1610,20 +1610,22 @@ procedure TFileSystemOperationHelper.QuestionActionHandler( function TFileSystemOperationHelper.FileExists(aFile: TFile; var AbsoluteTargetFileName: String; AllowAppend: Boolean ): TFileSourceOperationOptionFileExists; +type + TFileSourceOperationUIResponses = array of TFileSourceOperationUIResponse; const - Responses: array[0..13] of TFileSourceOperationUIResponse + Responses: TFileSourceOperationUIResponses = (fsourOverwrite, fsourSkip, fsourRenameSource, fsourOverwriteAll, fsourSkipAll, fsourResume, fsourOverwriteOlder, fsourCancel, fsouaCompare, fsourAppend, fsourOverwriteSmaller, fsourOverwriteLarger, fsourAutoRenameSource, fsourAutoRenameTarget); - ResponsesNoAppend: array[0..11] of TFileSourceOperationUIResponse + ResponsesNoAppend: TFileSourceOperationUIResponses = (fsourOverwrite, fsourSkip, fsourRenameSource, fsourOverwriteAll, fsourSkipAll, fsourOverwriteSmaller, fsourOverwriteOlder, fsourCancel, fsouaCompare, fsourOverwriteLarger, fsourAutoRenameSource, fsourAutoRenameTarget); var Answer: Boolean; Message: String; - PossibleResponses: array of TFileSourceOperationUIResponse; + PossibleResponses: TFileSourceOperationUIResponses; function RenameTarget: TFileSourceOperationOptionFileExists; var diff --git a/src/filesources/wcxarchive/uwcxarchivecopyoutoperation.pas b/src/filesources/wcxarchive/uwcxarchivecopyoutoperation.pas index 75818f1d85..174e0c5c00 100644 --- a/src/filesources/wcxarchive/uwcxarchivecopyoutoperation.pas +++ b/src/filesources/wcxarchive/uwcxarchivecopyoutoperation.pas @@ -569,17 +569,19 @@ procedure TWcxArchiveCopyOutOperation.QuestionActionHandler( function TWcxArchiveCopyOutOperation.DoFileExists(Header: TWcxHeader; var AbsoluteTargetFileName: String): TFileSourceOperationOptionFileExists; +type + TFileSourceOperationUIResponses = array of TFileSourceOperationUIResponse; const - Responses: array[0..10] of TFileSourceOperationUIResponse + Responses: TFileSourceOperationUIResponses = (fsourOverwrite, fsourSkip, fsourOverwriteLarger, fsourOverwriteAll, fsourSkipAll, fsourOverwriteSmaller, fsourOverwriteOlder, fsourCancel, fsouaCompare, fsourRenameSource, fsourAutoRenameSource); - ResponsesNoCompare: array[0..9] of TFileSourceOperationUIResponse + ResponsesNoCompare: TFileSourceOperationUIResponses = (fsourOverwrite, fsourSkip, fsourOverwriteLarger, fsourOverwriteAll, fsourSkipAll, fsourOverwriteSmaller, fsourOverwriteOlder, fsourCancel, fsourRenameSource, fsourAutoRenameSource); var - PossibleResponses: array of TFileSourceOperationUIResponse; + PossibleResponses: TFileSourceOperationUIResponses; Answer: Boolean; Message: String; diff --git a/src/filesources/wfxplugin/uwfxpluginutil.pas b/src/filesources/wfxplugin/uwfxpluginutil.pas index d16186d184..9b2786067b 100644 --- a/src/filesources/wfxplugin/uwfxpluginutil.pas +++ b/src/filesources/wfxplugin/uwfxpluginutil.pas @@ -438,16 +438,18 @@ function FileExistsMessage(TargetFile: TFile; SourceFile: TFile): String; function TWfxPluginOperationHelper.FileExists(aFile: TFile; AbsoluteTargetFileName: String; AllowResume: Boolean ): TFileSourceOperationOptionFileExists; +type + TFileSourceOperationUIResponses = array of TFileSourceOperationUIResponse; const - Responses: array[0..6] of TFileSourceOperationUIResponse + Responses: TFileSourceOperationUIResponses = (fsourOverwrite, fsourSkip, fsourResume, fsourOverwriteAll, fsourSkipAll, fsouaCompare, fsourCancel); - ResponsesNoResume: array[0..5] of TFileSourceOperationUIResponse + ResponsesNoResume: TFileSourceOperationUIResponses = (fsourOverwrite, fsourSkip, fsourOverwriteAll, fsourSkipAll, fsouaCompare, fsourCancel); var Message: String; - PossibleResponses: array of TFileSourceOperationUIResponse; + PossibleResponses: TFileSourceOperationUIResponses; begin case FFileExistsOption of fsoofeNone: diff --git a/src/fmain.pas b/src/fmain.pas index a225a68f4b..45b35ec173 100644 --- a/src/fmain.pas +++ b/src/fmain.pas @@ -1479,7 +1479,7 @@ procedure TfrmMain.MainToolBarToolButtonDragDrop(Sender, Source: TObject; X, Y: // Button was moved. SaveToolBar(Toolbar) else - if Sender is TKASToolButton and not Draging then + if (Sender is TKASToolButton) and not Draging then begin ToolItem := TKASToolButton(Sender).ToolItem; if ToolItem is TKASProgramItem then diff --git a/src/ufilefunctions.pas b/src/ufilefunctions.pas index fc4bc8cb0a..42302683f0 100644 --- a/src/ufilefunctions.pas +++ b/src/ufilefunctions.pas @@ -255,7 +255,7 @@ function FormatFileFunction(FuncS: string; AFile: TFile; fsfAttr: if fpAttributes in AFile.SupportedProperties then begin - if AFile.Properties[fpAttributes] is TUnixFileAttributesProperty and (AParam = ATTR_OCTAL) then + if (AFile.Properties[fpAttributes] is TUnixFileAttributesProperty) and (AParam = ATTR_OCTAL) then Result := FormatUnixModeOctal(AFile.Attributes) else Result := AFile.Properties[fpAttributes].Format(DefaultFilePropertyFormatter);