mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-28 20:00:15 +02:00
Change AddFile method from procedure to boolean function
git-svn-id: trunk@29269 -
This commit is contained in:
parent
ec24138bfa
commit
43213dc637
@ -187,7 +187,7 @@ TYPE
|
||||
CONSTRUCTOR Create (TargetStream : TStream); OVERLOAD;
|
||||
CONSTRUCTOR Create (TargetFilename : STRING; Mode : INTEGER = fmCreate); OVERLOAD;
|
||||
DESTRUCTOR Destroy; OVERRIDE; // Writes End-Of-File Tag
|
||||
PROCEDURE AddFile (Filename : STRING; TarFilename : STRING = '');
|
||||
FUNCTION AddFile (Filename : STRING; TarFilename : STRING = '') : BOOLEAN;
|
||||
PROCEDURE AddStream (Stream : TStream; TarFilename : STRING; FileDateGmt : TDateTime);
|
||||
PROCEDURE AddString (Contents : STRING; TarFilename : STRING; FileDateGmt : TDateTime);
|
||||
PROCEDURE AddDir (Dirname : STRING; DateGmt : TDateTime; MaxDirSize : INT64 = 0);
|
||||
@ -787,17 +787,30 @@ BEGIN
|
||||
END;
|
||||
|
||||
|
||||
PROCEDURE TTarWriter.AddFile (Filename : STRING; TarFilename : STRING = '');
|
||||
FUNCTION TTarWriter.AddFile (Filename : STRING; TarFilename : STRING = '') : BOOLEAN;
|
||||
VAR
|
||||
S : TFileStream;
|
||||
Date : TDateTime;
|
||||
BEGIN
|
||||
AddFile:=false;
|
||||
Date := FileTimeGMT (Filename);
|
||||
IF TarFilename = '' THEN
|
||||
TarFilename := ConvertFilename (Filename);
|
||||
TRY
|
||||
S := TFileStream.Create (Filename, fmOpenRead OR fmShareDenyWrite);
|
||||
EXCEPT
|
||||
ON EFOpenError DO
|
||||
BEGIN
|
||||
Writeln(stderr,'LibTar error: unable to open file "',Filename,'" for reading.');
|
||||
S.Free;
|
||||
exit;
|
||||
END;
|
||||
END;
|
||||
|
||||
TRY
|
||||
AddStream (S, TarFilename, Date);
|
||||
// No error, AddFile succeeded
|
||||
AddFile:=true;
|
||||
FINALLY
|
||||
S.Free
|
||||
END;
|
||||
|
Loading…
Reference in New Issue
Block a user