2009-11-14 04:21 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

* harbour/include/hbdefs.h
    * added small hack to eliminate negative handles from 32 bit windows
      builds. Please remember that this trick can work only in 32 bit
      windows version. In 64 bit ones valid handle after casting to integer
      value can give negative 64 bit number so checking for wrong handle
      please compare them with FS_ERROR (-1) instead of using < 0 or sth
      like that. Otherwise your code may not work properly with some new
      windows versions or may even suddenly stop to work with existing
      ones even if they worked for some time without problems.

  * harbour/src/rdd/dbf1.c
    * pacified warning after adding above hack

  * harbour/tests/cpinfo.prg
    ! removed unnecessary EOL reported by Viktor
This commit is contained in:
Przemyslaw Czerpak
2009-11-14 03:22:09 +00:00
parent 957cad0844
commit 4be6249a73
4 changed files with 22 additions and 6 deletions

View File

@@ -17,6 +17,23 @@
past entries belonging to author(s): Viktor Szakats.
*/
2009-11-14 04:21 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbdefs.h
* added small hack to eliminate negative handles from 32 bit windows
builds. Please remember that this trick can work only in 32 bit
windows version. In 64 bit ones valid handle after casting to integer
value can give negative 64 bit number so checking for wrong handle
please compare them with FS_ERROR (-1) instead of using < 0 or sth
like that. Otherwise your code may not work properly with some new
windows versions or may even suddenly stop to work with existing
ones even if they worked for some time without problems.
* harbour/src/rdd/dbf1.c
* pacified warning after adding above hack
* harbour/tests/cpinfo.prg
! removed unnecessary EOL reported by Viktor
2009-11-13 17:43 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/generator/hbqtgen.prg

View File

@@ -609,7 +609,7 @@ typedef unsigned long HB_COUNTER;
#else
typedef void * HB_FHANDLE;
#endif
typedef HB_PTRDIFF HB_NHANDLE;
typedef HB_PTRUINT HB_NHANDLE;
# define hb_numToHandle( h ) ( ( HB_FHANDLE ) ( HB_NHANDLE ) ( h ) )
#else
typedef int HB_FHANDLE;

View File

@@ -3298,13 +3298,13 @@ static HB_ERRCODE hb_dbfInfo( DBFAREAP pArea, USHORT uiIndex, PHB_ITEM pItem )
break;
case DBI_FILEHANDLE:
hb_itemPutNInt( pItem, pArea->pDataFile ?
( HB_NHANDLE ) hb_fileHandle( pArea->pDataFile ) : FS_ERROR );
hb_itemPutNInt( pItem, !pArea->pDataFile ? FS_ERROR :
( HB_LONG ) ( HB_NHANDLE ) hb_fileHandle( pArea->pDataFile ) );
break;
case DBI_MEMOHANDLE:
hb_itemPutNInt( pItem, pArea->pMemoFile ?
( HB_NHANDLE ) hb_fileHandle( pArea->pMemoFile ) : FS_ERROR );
hb_itemPutNInt( pItem, ! pArea->pMemoFile ? FS_ERROR :
( HB_LONG ) ( HB_NHANDLE ) hb_fileHandle( pArea->pMemoFile ) );
break;
case DBI_SHARED:

View File

@@ -424,7 +424,6 @@ static function genCPfile( id, info, unicode, flags, upper, lower, sort, ;
if !lBin
cDef += ;
'#endif' + EOL + EOL
EOL
endif
endif
cDef += ;