From: <tw...@us...> - 2019-12-31 19:02:52
|
Revision: 3001 http://sourceforge.net/p/gexperts/code/3001 Author: twm Date: 2019-12-31 19:02:51 +0000 (Tue, 31 Dec 2019) Log Message: ----------- * include dzlib.inc rather than dzlibjedi.inc (wich is included in dzlib.inc * fix for compile error / warning due to inconsistent declarations of file handles in the Delphi RTL Modified Paths: -------------- trunk/ExternalSource/dzlib/u_dzFileStreams.pas Added Paths: ----------- trunk/ExternalSource/dzlib/dzlib.inc Added: trunk/ExternalSource/dzlib/dzlib.inc =================================================================== --- trunk/ExternalSource/dzlib/dzlib.inc (rev 0) +++ trunk/ExternalSource/dzlib/dzlib.inc 2019-12-31 19:02:51 UTC (rev 3001) @@ -0,0 +1,19 @@ +{$INCLUDE 'dzlibjedi.inc'} + +{$IFDEF DELPHIX_TOKYO_UP} +{$DEFINE FILECTRL_DIRECTORYEXISTS_IS_DEPRECATED} +{$ENDIF} + +// The following cond. defines address errors in various Delphi versions regarding the declaration +// of the FHandle field of THandleStream and the corresponding Create constructor parameter: + +{$IFDEF DELPHI2009_UP} +// THandleStream.FHandle is declared as THandle (before that it's an Integer) +{$DEFINE THANDLESTREAM_HANDLE_IS_THANDLE} +{$ENDIF} + +{$IFDEF DELPHIXE2_UP} +// AHandle is declared as THandle (otherwise it's an Integer) +{$DEFINE THANDLESTREAM_CREATE_HANDLE_IS_THANDLE} +{$ENDIF} + Modified: trunk/ExternalSource/dzlib/u_dzFileStreams.pas =================================================================== --- trunk/ExternalSource/dzlib/u_dzFileStreams.pas 2019-12-31 19:01:04 UTC (rev 3000) +++ trunk/ExternalSource/dzlib/u_dzFileStreams.pas 2019-12-31 19:02:51 UTC (rev 3001) @@ -5,7 +5,7 @@ /// and sets the properties to sensible values for temporary files. </summary> unit u_dzFileStreams; -{$I dzlibjedi.inc} +{$INCLUDE 'dzlib.inc'} interface @@ -254,14 +254,15 @@ {$ENDIF} type -{$IFDEF DELPHIXE_UP} +{$IFDEF THANDLESTREAM_CREATE_HANDLE_IS_THANDLE} + THandleStreamCreateHandleCast = THandle; +{$ELSE} + THandleStreamCreateHandleCast = Integer; +{$ENDIF} +{$IFDEF THANDLESTREAM_HANDLE_IS_THANDLE} THandleCast = THandle; {$ELSE} - THandleCast = Integer; // Delphi < XE wrongly declares the handle parameter - // to THandleStream.Create as signed integer while - // it really should be unsigned. Delphi XE corrects - // this but in order to compile with all version we - // need this cond. define. + THandleCast = Integer; {$ENDIF} class procedure TdzFile.CreateReadFree(const _fn: string; var _Buffer; _Size: Integer); @@ -292,7 +293,7 @@ constructor TdzFile.Create(const _Filename: string); begin - inherited Create(THandleCast(INVALID_HANDLE_VALUE)); + inherited Create(THandleStreamCreateHandleCast(INVALID_HANDLE_VALUE)); FFilename := _Filename; FAccessMode := [faRead]; FShareMode := [fsRead]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |