2008-10-09 09:57 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
+ Added missing HB_DISABLEWAITLOCKS().
; NOTE: This looks like a hack to add FLX_WAIT flag
for locks app-wide, and on Windows systems only.
IMO we should not have such hacks in core, or if
this is really important it should support all
possible platforms.
It also has a low-level function equivalent,
which is missing from hbapifs.h. There is no
reference to these function in any Harbour or
xhb changelogs.
If there are no objections, I'd like remove
this functionality.
* source/rtl/hbrandom.c
* source/rtl/filesys.c
* Minor formatting.
This commit is contained in:
@@ -8,6 +8,25 @@
|
||||
2008-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org)
|
||||
*/
|
||||
|
||||
2008-10-09 09:57 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
|
||||
* include/hbextern.ch
|
||||
+ Added missing HB_DISABLEWAITLOCKS().
|
||||
; NOTE: This looks like a hack to add FLX_WAIT flag
|
||||
for locks app-wide, and on Windows systems only.
|
||||
IMO we should not have such hacks in core, or if
|
||||
this is really important it should support all
|
||||
possible platforms.
|
||||
It also has a low-level function equivalent,
|
||||
which is missing from hbapifs.h. There is no
|
||||
reference to these function in any Harbour or
|
||||
xhb changelogs.
|
||||
If there are no objections, I'd like remove
|
||||
this functionality.
|
||||
|
||||
* source/rtl/hbrandom.c
|
||||
* source/rtl/filesys.c
|
||||
* Minor formatting.
|
||||
|
||||
2008-10-09 03:26 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
|
||||
* harbour/include/hbcompdf.h
|
||||
* harbour/source/compiler/hbmain.c
|
||||
|
||||
@@ -862,6 +862,7 @@ EXTERNAL HB_GETENV
|
||||
EXTERNAL HB_USERNAME
|
||||
EXTERNAL HB_RUN
|
||||
EXTERNAL HB_GETREADVAR
|
||||
EXTERNAL HB_DISABLEWAITLOCKS
|
||||
|
||||
EXTERNAL HB_INISETCOMMENT
|
||||
EXTERNAL HB_INIREAD
|
||||
|
||||
@@ -317,7 +317,7 @@ static HANDLE DosToWinHandle( HB_FHANDLE fHandle )
|
||||
return GetStdHandle( STD_OUTPUT_HANDLE );
|
||||
|
||||
else if( fHandle == ( HB_FHANDLE ) 2 )
|
||||
return GetStdHandle( STD_ERROR_HANDLE) ;
|
||||
return GetStdHandle( STD_ERROR_HANDLE);
|
||||
|
||||
else
|
||||
return ( HANDLE ) fHandle;
|
||||
@@ -1366,7 +1366,7 @@ HB_EXPORT USHORT hb_fsRead( HB_FHANDLE hFileHandle, BYTE * pBuff, USHORT uiCount
|
||||
|
||||
#if defined(HB_WIN32_IO)
|
||||
{
|
||||
DWORD dwRead ;
|
||||
DWORD dwRead;
|
||||
BOOL fResult;
|
||||
|
||||
hb_vmUnlock();
|
||||
@@ -1891,14 +1891,14 @@ HB_EXPORT BOOL hb_fsLock( HB_FHANDLE hFileHandle, ULONG ulStart,
|
||||
{
|
||||
if( hb_iswinnt() )
|
||||
{
|
||||
OVERLAPPED sOlap ;
|
||||
DWORD dwFlags ;
|
||||
memset( &sOlap, 0, sizeof( OVERLAPPED ) ) ;
|
||||
sOlap.Offset = ( ULONG ) ulStart ;
|
||||
dwFlags = ( uiMode & FLX_SHARED ) ? 0 : LOCKFILE_EXCLUSIVE_LOCK ;
|
||||
OVERLAPPED sOlap;
|
||||
DWORD dwFlags;
|
||||
memset( &sOlap, 0, sizeof( OVERLAPPED ) );
|
||||
sOlap.Offset = ( ULONG ) ulStart;
|
||||
dwFlags = ( uiMode & FLX_SHARED ) ? 0 : LOCKFILE_EXCLUSIVE_LOCK;
|
||||
if( !s_fUseWaitLocks || !( uiMode & FLX_WAIT ) )
|
||||
{
|
||||
dwFlags |= LOCKFILE_FAIL_IMMEDIATELY ;
|
||||
dwFlags |= LOCKFILE_FAIL_IMMEDIATELY;
|
||||
}
|
||||
bResult = LockFileEx( DosToWinHandle( hFileHandle ), dwFlags, 0, ulLength, 0, &sOlap );
|
||||
}
|
||||
@@ -1912,9 +1912,9 @@ HB_EXPORT BOOL hb_fsLock( HB_FHANDLE hFileHandle, ULONG ulStart,
|
||||
{
|
||||
if( hb_iswinnt() )
|
||||
{
|
||||
OVERLAPPED sOlap ;
|
||||
memset( &sOlap, 0, sizeof( OVERLAPPED ) ) ;
|
||||
sOlap.Offset = ( ULONG ) ulStart ;
|
||||
OVERLAPPED sOlap;
|
||||
memset( &sOlap, 0, sizeof( OVERLAPPED ) );
|
||||
sOlap.Offset = ( ULONG ) ulStart;
|
||||
bResult = UnlockFileEx( DosToWinHandle( hFileHandle ), 0, ulLength,0, &sOlap );
|
||||
}
|
||||
else
|
||||
@@ -2100,13 +2100,13 @@ HB_EXPORT BOOL hb_fsLockLarge( HB_FHANDLE hFileHandle, HB_FOFFSET ulStart,
|
||||
case FL_LOCK:
|
||||
if( hb_iswinnt() )
|
||||
{
|
||||
OVERLAPPED sOlap ;
|
||||
DWORD dwFlags ;
|
||||
OVERLAPPED sOlap;
|
||||
DWORD dwFlags;
|
||||
|
||||
dwFlags = ( ( uiMode & FLX_SHARED ) ? 0 : LOCKFILE_EXCLUSIVE_LOCK );
|
||||
if( !s_fUseWaitLocks || !( uiMode & FLX_WAIT ) )
|
||||
{
|
||||
dwFlags |= LOCKFILE_FAIL_IMMEDIATELY ;
|
||||
dwFlags |= LOCKFILE_FAIL_IMMEDIATELY;
|
||||
}
|
||||
|
||||
memset( &sOlap, 0, sizeof( OVERLAPPED ) );
|
||||
@@ -2127,7 +2127,7 @@ HB_EXPORT BOOL hb_fsLockLarge( HB_FHANDLE hFileHandle, HB_FOFFSET ulStart,
|
||||
case FL_UNLOCK:
|
||||
if( hb_iswinnt() )
|
||||
{
|
||||
OVERLAPPED sOlap ;
|
||||
OVERLAPPED sOlap;
|
||||
|
||||
memset( &sOlap, 0, sizeof( OVERLAPPED ) );
|
||||
sOlap.Offset = dwOffsetLo;
|
||||
|
||||
@@ -52,6 +52,7 @@
|
||||
|
||||
#include "hbmath.h"
|
||||
#include "hbdate.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#if !defined( HB_OS_WIN_32 )
|
||||
|
||||
Reference in New Issue
Block a user