You've already forked lazarus-ccr
svn classes: added property version of the installed svn executable.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1831 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@@ -41,12 +41,34 @@ uses
|
|||||||
function ExecuteSvnCommand(const Command: string; Output: TStream): integer;
|
function ExecuteSvnCommand(const Command: string; Output: TStream): integer;
|
||||||
function ExecuteSvnCommand(const Command: string): integer;
|
function ExecuteSvnCommand(const Command: string): integer;
|
||||||
procedure DumpStream(const AStream: TStream);
|
procedure DumpStream(const AStream: TStream);
|
||||||
|
function GetSvnVersionNumber: string;
|
||||||
|
|
||||||
|
property SvnVersion: string read GetSvnVersionNumber;
|
||||||
|
|
||||||
var
|
var
|
||||||
SvnExecutable: string;
|
SvnExecutable: string;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
var
|
||||||
|
SvnVersionNumber: string;
|
||||||
|
|
||||||
|
procedure InitializeSvnVersionNumber;
|
||||||
|
var
|
||||||
|
OutputStream: TStream;
|
||||||
|
FirstDot, SecondDot: integer;
|
||||||
|
begin
|
||||||
|
OutputStream := TMemoryStream.Create;
|
||||||
|
try
|
||||||
|
ExecuteSvnCommand('--version --quiet', OutputStream);
|
||||||
|
SetLength(SvnVersionNumber, OutputStream.Size);
|
||||||
|
OutputStream.Seek(0,soBeginning);
|
||||||
|
OutputStream.Read(SvnVersionNumber[1],Length(SvnVersionNumber));
|
||||||
|
finally
|
||||||
|
OutputStream.Free;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure InitializeSvnExecutable;
|
procedure InitializeSvnExecutable;
|
||||||
begin
|
begin
|
||||||
if FileExists(SvnExecutable) then exit;
|
if FileExists(SvnExecutable) then exit;
|
||||||
@@ -133,6 +155,13 @@ begin
|
|||||||
lines.Free;
|
lines.Free;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function GetSvnVersionNumber: string;
|
||||||
|
begin
|
||||||
|
if SvnVersionNumber='' then
|
||||||
|
InitializeSvnVersionNumber;
|
||||||
|
Result := SvnVersionNumber;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user