20000407-15:25 GMT+2 Maurilio Longo <maurilio.longo@libero.it>

This commit is contained in:
Maurilio Longo
2000-04-07 13:28:37 +00:00
parent 2c5c1b2582
commit b4f6d1a8d6
3 changed files with 74 additions and 13 deletions

View File

@@ -1,3 +1,10 @@
20000407-15:25 GMT+2 Maurilio Longo <maurilio.longo@libero.it>
* source/rtl/diskspac.c
+ Added OS/2 (GCC and icc) support
* tests/MakeFile
+ db_brows was missing from sources list
20000407-03:26 GMT+1 Victor Szakats <info@szelvesz.hu>
* include/hbver.h
@@ -15,8 +22,8 @@
20000406-10:55 GMT+1 Ryszard Glab <rglab@imid.med.pl>
*source/compiler/harbour.y
* the parser resumes parsing after 'parse errors' (parsing errors
are non-fatal now)
* the parser resumes parsing after 'parse errors' (parsing errors
are non-fatal now)
20000406-08:52 GMT+1 Victor Szakats <info@szelvesz.hu>
@@ -69,7 +76,7 @@
* source/rtl/math.c
! exception redefined as _exception for Borland C++ 5.5 and upper.
! Disabled math exception handling for Borland C++ 5.3 C++ mode,
since it won't work. Other Borland C++ version (4.x,5.x) should be
since it won't work. Other Borland C++ version (4.x,5.x) should be
also checked in this respect.
* source/rtl/gtwin/gtwin.c
@@ -87,8 +94,8 @@
* makefile.vc
! Using a safer method for the unistd.h workaround. It's now created
in the local OBJ dir instead of the common INCLUDE. This way it's
impossible to accidently leave it there and break Cygnus and other
in the local OBJ dir instead of the common INCLUDE. This way it's
impossible to accidently leave it there and break Cygnus and other
GCC make processes.
+ utils/hbtest/rt_stra.prg
@@ -96,10 +103,10 @@
* makefile.*
! rt_str.prg split to make it compile with BCC31.
; All these fixes were needed to compile in C++ mode with Borland C++
; All these fixes were needed to compile in C++ mode with Borland C++
(3.1, 5.3, 5.5). Hmm, the Harbour .EXE sizes are actually 10% smaller
than with 32 bit Borland Cs.
2000-04-04 20:00 GMT-4 David G. Holm <dholm@jsd-llc.com>
* source/rtl/dir.c
@@ -146,7 +153,7 @@
* source/rtl/dircmd.prg
+ Changed to use NationMsg() instead of the hard-wired English
string. The previous 100% compatible version left in STRICT_COMPAT
string. The previous 100% compatible version left in STRICT_COMPAT
branch.
* source/rtl/console.c
@@ -205,7 +212,7 @@
* source/rtl/tget.prg
+ Added XPP compatible _Assign and _End() methods.
! Home(), End(), Access(), ColorDisp(), UpdateBuffer()
! Home(), End(), Access(), ColorDisp(), UpdateBuffer()
fixed to return Self.
+ TODO added about Xbase++ compatible method.

View File

@@ -44,7 +44,7 @@
*
*/
/* NOTE: DISKSPACE() supports larger disks than 2GB. CA-Cl*pper will always
/* NOTE: DISKSPACE() supports larger disks than 2GB. CA-Cl*pper will always
return a (long) value, Harbour may return a (double) for large
values, the decimal places are always set to zero, though. */
@@ -58,6 +58,12 @@
#include <dos.h>
#endif
#if defined(HB_OS_OS2)
#define INCL_BASE
#define INCL_DOSERRORS
#include <os2.h>
#endif
/* NOTE: The second parameter is a Harbour extension, check fileio.ch for
the possible values. */
@@ -120,7 +126,7 @@ HB_FUNC( DISKSPACE )
while( TRUE )
{
typedef BOOL (WINAPI *P_GDFSE)(LPCTSTR, PULARGE_INTEGER,
typedef BOOL (WINAPI *P_GDFSE)(LPCTSTR, PULARGE_INTEGER,
PULARGE_INTEGER, PULARGE_INTEGER);
char szPath[ 4 ];
@@ -202,7 +208,7 @@ HB_FUNC( DISKSPACE )
( double ) i64RetVal.u.HighPart +
( double ) i64RetVal.u.HighPart *
( double ) 0xFFFFFFFF;
if( uiType == HB_DISK_USED )
{
dSpace -= ( double ) i64FreeBytes.u.LowPart +
@@ -214,7 +220,7 @@ HB_FUNC( DISKSPACE )
#endif
}
}
else
else
{
DWORD dwSectorsPerCluster;
DWORD dwBytesPerSector;
@@ -271,6 +277,53 @@ HB_FUNC( DISKSPACE )
break;
}
#elif defined(HB_OS_OS2)
struct _FSALLOCATE fsa;
USHORT rc;
uiType = HB_MIN( uiType, HB_DISK_TOTAL );
/* Query level 1 info from filesystem */
while( ( rc = DosQueryFSInfo(uiDrive, 1, &fsa, sizeof(fsa)) ) != 0 )
{
USHORT uiAction = hb_errRT_BASE_Ext1( EG_OPEN, 2018, NULL, NULL, 0, EF_CANDEFAULT );
/* NOTE: Under 'Standard' behaviour, this error does not allow 'retry'
but if you should wish to make it so, then or EF_CANRETRY with
EF_CANDEFAULT above)
*/
if( uiAction != E_RETRY )
break;
}
if(rc == 0)
{
switch( uiType )
{
case HB_DISK_AVAIL:
case HB_DISK_FREE:
dSpace = ( double ) fsa.cUnitAvail *
( double ) fsa.cSectorUnit *
( double ) fsa.cbSector;
break;
case HB_DISK_USED:
case HB_DISK_TOTAL:
dSpace = ( double ) fsa.cUnit *
( double ) fsa.cSectorUnit *
( double ) fsa.cbSector;
if( uiType == HB_DISK_USED )
dSpace -= ( double ) fsa.cUnitAvail *
( double ) fsa.cSectorUnit *
( double ) fsa.cbSector;
break;
}
}
#else
HB_SYMBOL_UNUSED( uiDrive );

View File

@@ -57,6 +57,7 @@ PRG_SOURCES=\
dates2.prg \
dates3.prg \
dates4.prg \
db_brows.prg \
dbevalts.prg \
debugtst.prg \
devtest.prg \