OpkMan: Don't use the UTF8 specific functions. FPC 2.x is not supported any more.

git-svn-id: trunk@54362 -
This commit is contained in:
juha 2017-03-07 14:29:46 +00:00
parent e8de10799e
commit a5d7bbe810
6 changed files with 70 additions and 62 deletions

View File

@ -5,10 +5,14 @@ unit opkman_createrepositorypackagefr;
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, ExtCtrls, StdCtrls, Dialogs,
LazFileUtils, Graphics, Menus, Buttons, Laz2_XMLCfg, opkman_VirtualTrees,
md5, fpjson, LCLIntf, EditBtn, opkman_serializablepackages, opkman_zipper,
opkman_uploader;
Classes, SysUtils, md5, fpjson,
// LCL
Forms, Controls, ExtCtrls, StdCtrls, Dialogs, Graphics, Buttons, EditBtn,
LCLIntf,
// LazUtils
FileUtil, LazFileUtils, Laz2_XMLCfg,
// OpkMan
opkman_VirtualTrees, opkman_serializablepackages, opkman_zipper, opkman_uploader;
type
PData = ^TData;
@ -1100,12 +1104,12 @@ begin
ShowHideControls(2);
EnableDisableControls(True);
Uploader := nil;
if FileExistsUTF8(FPackageFile) then
DeleteFileUTF8(FPackageFile);
if FileExistsUTF8(FDestDir + FPackageName + '.json') then
DeleteFileUTF8(FDestDir + FPackageName + '.json');
if FileExistsUTF8(FDestDir + 'update_' + FPackageName + '.json') then
DeleteFileUTF8(FDestDir + 'update_' + FPackageName + '.json');
if FileExists(FPackageFile) then
DeleteFile(FPackageFile);
if FileExists(FDestDir + FPackageName + '.json') then
DeleteFile(FDestDir + FPackageName + '.json');
if FileExists(FDestDir + 'update_' + FPackageName + '.json') then
DeleteFile(FDestDir + 'update_' + FPackageName + '.json');
MessageDlgEx(rsCreateRepositoryPackageFrm_Message9, mtInformation, [mbOk], TForm(Self.Parent));
TForm(Self.Parent).ModalResult := mrOk;
TForm(Self.Parent).Close;

View File

@ -31,7 +31,11 @@ interface
uses
Classes, SysUtils, contnrs,
// LCL
Dialogs, Forms, Controls, LazIDEIntf, LazFileUtils,
Dialogs, Forms, Controls,
// LazUtils
LazFileUtils,
// IdeIntf
LazIDEIntf,
// OpkMan
opkman_const, opkman_options;
@ -148,12 +152,12 @@ var
LocalRepo, LocalRepoConfig: String;
begin
LocalRepo := AppendPathDelim(AppendPathDelim(LazarusIDE.GetPrimaryConfigPath) + cLocalRepository);
if not DirectoryExistsUTF8(LocalRepo) then
CreateDirUTF8(LocalRepo);
if not DirectoryExists(LocalRepo) then
CreateDir(LocalRepo);
LocalRepoConfig := AppendPathDelim(LocalRepo + cLocalRepositoryConfig);
if not DirectoryExists(LocalRepoConfig) then
CreateDirUTF8(LocalRepoConfig);
CreateDir(LocalRepoConfig);
LocalRepositoryConfigFile := LocalRepoConfig + cLocalRepositoryConfigFile;
LocalRepositoryUpdatesFile := LocalRepoConfig + cLocalRepositoryUpdatesFile;
end;

View File

@ -128,7 +128,7 @@ begin
FLocalUpdateDefault := LocalRepo + AppendPathDelim(cLocalRepositoryUpdate);
FXML := TXMLConfig.Create(AFileName);
if FileExistsUTF8(AFileName) then
if FileExists(AFileName) then
begin
Load;
if FLocalRepositoryPackages = '' then
@ -254,11 +254,11 @@ end;
procedure TOptions.CreateMissingPaths;
begin
if not DirectoryExists(FLocalRepositoryPackages) then
CreateDirUTF8(FLocalRepositoryPackages);
CreateDir(FLocalRepositoryPackages);
if not DirectoryExists(FLocalRepositoryArchive) then
CreateDirUTF8(FLocalRepositoryArchive);
CreateDir(FLocalRepositoryArchive);
if not DirectoryExists(FLocalRepositoryUpdate) then
CreateDirUTF8(FLocalRepositoryUpdate);
CreateDir(FLocalRepositoryUpdate);
end;
end.

View File

@ -1048,7 +1048,7 @@ var
FileName: String;
begin
FileName := Options.LocalRepositoryArchive + APackage.RepositoryFileName;
Result := (FileExistsUTF8(FileName)) and
Result := (FileExists(FileName)) and
// (MD5Print(MD5File(FileName)) = APackage.RepositoryFileHash) and
(FileUtil.FileSize(FileName) = APackage.RepositoryFileSize);
end;
@ -1062,8 +1062,9 @@ begin
for I := 0 to APackage.FPackageFiles.Count - 1 do
begin
PackageFile := TPackageFile(APackage.FPackageFiles.Items[I]);
PackageFile.FPackageAbsolutePath := Options.LocalRepositoryPackages + APackage.PackageBaseDir + PackageFile.FPackageRelativePath + PackageFile.Name;
if not FileExistsUTF8(PackageFile.FPackageAbsolutePath) then
PackageFile.FPackageAbsolutePath := Options.LocalRepositoryPackages + APackage.PackageBaseDir
+ PackageFile.FPackageRelativePath + PackageFile.Name;
if not FileExists(PackageFile.FPackageAbsolutePath) then
begin
Result := False;
Break;
@ -1154,7 +1155,7 @@ function TSerializablePackages.IsPackageInstalled(const APackageFile: TPackageFi
IntToStr(Package.Version.Minor) + '.' +
IntToStr(Package.Version.Release) + '.' +
IntToStr(Package.Version.Build);
if FileExistsUTF8(APackageFile.InstalledFileName) then
if FileExists(APackageFile.InstalledFileName) then
begin
APackageFile.InstalledFileDescription := GetPackageDescription(Package.Filename);
APackageFile.InstalledFileLincese := GetPackageLicense(Package.Filename);
@ -1166,19 +1167,19 @@ function TSerializablePackages.IsPackageInstalled(const APackageFile: TPackageFi
end;
var
FileName: String;
FileName, RepoPath: String;
begin
Result := False;
case APackageFile.PackageType of
ptRunTime, ptRunTimeOnly:
begin
FileName := StringReplace(APackageFile.Name, '.lpk', '.opkman', [rfIgnoreCase]);
Result := (psExtracted in APackageFile.PackageStates) and
FileExistsUTF8(Options.LocalRepositoryPackages + APackageBaseDir + APackageFile.PackageRelativePath + FileName);
RepoPath := Options.LocalRepositoryPackages + APackageBaseDir + APackageFile.PackageRelativePath;
Result := (psExtracted in APackageFile.PackageStates) and FileExists(RepoPath + FileName);
if Result then
begin
APackageFile.InstalledFileName := Options.LocalRepositoryPackages + APackageBaseDir + APackageFile.FPackageRelativePath + APackageFile.Name;
if FileExistsUTF8(APackageFile.InstalledFileName) then
APackageFile.InstalledFileName := RepoPath + APackageFile.Name;
if FileExists(APackageFile.InstalledFileName) then
begin
APackageFile.InstalledFileVersion := GetPackageVersion(APackageFile.InstalledFileName);
APackageFile.InstalledFileDescription := GetPackageDescription(APackageFile.InstalledFileName);
@ -1400,7 +1401,7 @@ begin
(PackageFile.PackageType in [ptRunTime, ptRunTimeOnly]) then
begin
FileName := StringReplace(PackageFile.Name, '.lpk', '.opkman', [rfIgnoreCase]);
FileCreateUTF8(Options.LocalRepositoryPackages + Items[I].PackageBaseDir + PackageFile.PackageRelativePath + FileName);
FileCreate(Options.LocalRepositoryPackages + Items[I].PackageBaseDir + PackageFile.PackageRelativePath + FileName);
end;
end;
end;
@ -1457,7 +1458,7 @@ begin
end;
paUpdate:
begin
if FileExistsUTF8(Options.LocalRepositoryUpdate + Items[I].RepositoryFileName) then
if FileExists(Options.LocalRepositoryUpdate + Items[I].RepositoryFileName) then
DeleteFile(Options.LocalRepositoryUpdate + Items[I].RepositoryFileName)
end;
end;

View File

@ -32,7 +32,7 @@ interface
uses
Classes, SysUtils, fpjson, fpjsonrtti, dateutils,
// LazUtils
Laz2_XMLCfg, LazFileUtils,
Laz2_XMLCfg,
// OpkMan
opkman_timer, opkman_serializablepackages,
opkman_options, opkman_common, opkman_const,
@ -407,37 +407,38 @@ end;
procedure TUpdates.CheckForOpenSSL;
{$IFDEF MSWINDOWS}
var
ZipFile: String;
ParamPath, libeaydll, ssleaydll, ZipFile: String;
UnZipper: TUnZipper;
{$ENDIF}
begin
{$IFDEF MSWINDOWS}
FOpenSSLAvailable := FileExistsUTF8(ExtractFilePath(ParamStr(0)) + 'libeay32.dll') and
FileExistsUTF8(ExtractFilePath(ParamStr(0)) + 'ssleay32.dll');
if not FOpenSSLAvailable then
begin
ZipFile := ExtractFilePath(ParamStr(0)) + ExtractFileName(cOpenSSLURL);
try
FHTTPClient.Get(cOpenSSLURL, ZipFile);
except
end;
if FileExistsUTF8(ZipFile) then
begin
UnZipper := TUnZipper.Create;
try
try
UnZipper.FileName := ZipFile;
UnZipper.Examine;
UnZipper.UnZipAllFiles;
except
end;
finally
UnZipper.Free;
end;
DeleteFileUTF8(ZipFile);
FOpenSSLAvailable := FileExistsUTF8(ExtractFilePath(ParamStr(0)) + 'libeay32.dll') and
FileExistsUTF8(ExtractFilePath(ParamStr(0)) + 'ssleay32.dll');
end;
ParamPath := ExtractFilePath(ParamStr(0));
libeaydll := ParamPath + 'libeay32.dll';
ssleaydll := ParamPath + 'ssleay32.dll';
FOpenSSLAvailable := FileExists(libeaydll) and FileExists(ssleaydll);
if not FOpenSSLAvailable then
begin
ZipFile := ParamPath + ExtractFileName(cOpenSSLURL);
try
FHTTPClient.Get(cOpenSSLURL, ZipFile);
except
end;
if FileExists(ZipFile) then
begin
UnZipper := TUnZipper.Create;
try
try
UnZipper.FileName := ZipFile;
UnZipper.Examine;
UnZipper.UnZipAllFiles;
except
end;
finally
UnZipper.Free;
end;
DeleteFile(ZipFile);
FOpenSSLAvailable := FileExists(libeaydll) and FileExists(ssleaydll);
end;
end;
{$ELSE}
FOpenSSLAvailable := True;

View File

@ -32,8 +32,6 @@ interface
uses
Classes, SysUtils, base64,
// LazUtils
LazFileUtils,
// OpkMan
opkman_options, opkman_const,
{$IFDEF FPC311}fphttpclient{$ELSE}opkman_httpclient{$ENDIF};
@ -138,7 +136,7 @@ var
CanGo: Boolean;
begin
FFileName := ExtractFileName(FZip);
CanGo := FileExistsUTF8(FZip);
CanGo := FileExists(FZip);
if CanGo then
begin
Synchronize(@DoOnUploadProgress);
@ -153,7 +151,7 @@ begin
Exit;
FFileName := ExtractFileName(FJSON);
CanGo := FileExistsUTF8(FJSON);
CanGo := FileExists(FJSON);
if CanGo then
begin
Synchronize(@DoOnUploadProgress);
@ -171,7 +169,7 @@ begin
if FJSONUpdate <> '' then
begin
FFileName := ExtractFileName(FJSONUpdate);
CanGo := FileExistsUTF8(FJSONUpdate);
CanGo := FileExists(FJSONUpdate);
if CanGo then
begin
Synchronize(@DoOnUploadProgress);