2010-09-09 17:22 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

* harbour/src/rtl/filesys.c
    * unified hb_fsSeek[Large]() return value when seek operation cannot
      be executed for given file handle. Now it's 0 for all platforms.

  * harbour/include/hbapicls.h
  * harbour/src/vm/classes.c
    + added new public C function
         PHB_SYMB hb_clsFuncSym( HB_USHORT uiClass )
      It returns class function symbol or NULL.

  * harbour/ChangeLog
  * harbour/config/os2/gccomf.mk
  * harbour/include/hbpcode.h
  * harbour/include/hbdebug.ch
  * harbour/include/hbmath.ch
  * harbour/include/hbgfx.ch
  * harbour/src/vm/classes.c
  * harbour/utils/hbmk2/hbmk2.prg
    * removed dummy trailing spaces at EOLs
This commit is contained in:
Przemyslaw Czerpak
2010-09-09 15:22:21 +00:00
parent 535abb20ef
commit 253db45857
10 changed files with 53 additions and 15 deletions

View File

@@ -16,6 +16,27 @@
The license applies to all entries newer than 2009-04-28.
*/
2010-09-09 17:22 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/filesys.c
* unified hb_fsSeek[Large]() return value when seek operation cannot
be executed for given file handle. Now it's 0 for all platforms.
* harbour/include/hbapicls.h
* harbour/src/vm/classes.c
+ added new public C function
PHB_SYMB hb_clsFuncSym( HB_USHORT uiClass )
It returns class function symbol or NULL.
* harbour/ChangeLog
* harbour/config/os2/gccomf.mk
* harbour/include/hbpcode.h
* harbour/include/hbdebug.ch
* harbour/include/hbmath.ch
* harbour/include/hbgfx.ch
* harbour/src/vm/classes.c
* harbour/utils/hbmk2/hbmk2.prg
* removed dummy trailing spaces at EOLs
2010-09-08 18:41 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
* contrib/hbqt/utils/hbqtgen.prg
! Code cleanup.
@@ -26,8 +47,8 @@
+ contrib/hbqt/qtcore/qth/HBQString.qth
! It is exactly QString() class wrapper.
+ contrib/hbqt/qtcore/qth/QStringRef.qth
+ Added: two more classes.
+ Added: two more classes.
* contrib/hbqt/qtcore/qth/QObject.qth
- Commented out two methods.
@@ -55,12 +76,12 @@
+ Implemented: hbIDE specific macros available in Project's Environments
batch. The usage is like :
[ MinGW 4.4.1 ]
{content} SET project_name=${project_name}
{content} SET project_path=${project_path}
{content} SET project_name=${project_name}
{content} SET project_path=${project_path}
All macros available in Tools & Utilities can be used here also.
+ Project Tree: context-menu - Any project building action sets
the current project to the one which is invoked. Here we have
+ Project Tree: context-menu - Any project building action sets
the current project to the one which is invoked. Here we have
nothing to loose, rather gain. Thanks Maurizio for pointing.
2010-09-08 20:33 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)

View File

@@ -4,7 +4,7 @@
# GCC with OMF object format.
#
# This is available with GCC 3.3.5 as an option,
# This is available with GCC 3.3.5 as an option,
# and with GCC 4.x this an obligatory option.
include $(TOP)$(ROOT)config/$(HB_PLATFORM)/gcc.mk

View File

@@ -114,6 +114,7 @@ extern void hb_mthAddTime( HB_ULONG ulClockTicks ); /* profiler from
extern HB_EXPORT const char * hb_clsName( HB_USHORT uiClass );
extern HB_EXPORT const char * hb_clsFuncName( HB_USHORT uiClass );
extern HB_EXPORT const char * hb_clsMethodName( HB_USHORT uiClass, HB_USHORT uiMethod );
extern HB_EXPORT PHB_SYMB hb_clsFuncSym( HB_USHORT uiClass );
extern HB_EXPORT HB_BOOL hb_clsIsParent( HB_USHORT uiClass, const char * szParentName ); /* is a class handle inherited from szParentName Class ? */
extern HB_EXPORT HB_USHORT hb_clsFindClass( const char * szClass, const char * szFunc );

View File

@@ -4,7 +4,7 @@
/*
* Harbour Project source code:
* Header file for debugger
* Header file for debugger
*
* Copyright 1999 Ryszard Glab <rglab@imid.med.pl>
* www - http://harbour-project.org

View File

@@ -65,7 +65,7 @@
* screen, so this is under user choice.
* (the user just needs to know that it is not the same to aquire the screen, draw 100 lines, then
* release screen, than simply drawing 100 lines -as the GT will be acquiring/releasing the screen
* 100 times, which will slow down things a lot-) [Mauricio]
* 100 times, which will slow down things a lot-) [Mauricio]
*/
#xtranslate hb_gfxAcquireScreen() => hb_gfxPrimitive( HB_GFX_ACQUIRESCREEN )

View File

@@ -70,9 +70,9 @@
#define HB_MATH_ERRMODE_CDEFAULT 1 /* handle error by using the C RTL correction values */
#define HB_MATH_ERRMODE_USER 2 /* throw Harbour error, user MUST correct math error within Harbour error
handling */
#define HB_MATH_ERRMODE_USERDEFAULT 3 /* dito, but if user does not correct math error, default
#define HB_MATH_ERRMODE_USERDEFAULT 3 /* dito, but if user does not correct math error, default
error handling, i.e. by individual function applies */
#define HB_MATH_ERRMODE_USERCDEFAULT 4 /* as ERRMODE_USER, but if user does not correct math error, C RTL
#define HB_MATH_ERRMODE_USERCDEFAULT 4 /* as ERRMODE_USER, but if user does not correct math error, C RTL
correction values are used */
/* array element indices in aInfo parameter passed to math errorblock */

View File

@@ -205,7 +205,7 @@ typedef enum
HB_P_ENUMEND, /* 132 End of FOR EACH loop */
HB_P_SWITCH, /* 133 SWITCH using long values */
HB_P_PUSHDATE, /* 134 places a data constant value on the virtual machine stack */
/* optimalization of inlined math operations */
/* optimalization of inlined math operations */
HB_P_PLUSEQPOP, /* 135 adds a value to the variable reference */
HB_P_MINUSEQPOP, /* 136 subs a value from the variable reference */
HB_P_MULTEQPOP, /* 137 multiplies a variable reference by a value */

View File

@@ -2433,7 +2433,11 @@ HB_ULONG hb_fsSeek( HB_FHANDLE hFileHandle, HB_LONG lOffset, HB_USHORT uiFlags )
}
if( ulPos == ( ULONG ) INVALID_SET_FILE_POINTER )
{
ulPos = ( ULONG ) SetFilePointer( DosToWinHandle( hFileHandle ), 0, NULL, SEEK_CUR );
if( ulPos == ( ULONG ) INVALID_SET_FILE_POINTER )
ulPos = 0;
}
#else
/* This DOS hack creates 2GB file size limit, Druzus */
@@ -2494,6 +2498,8 @@ HB_FOFFSET hb_fsSeekLarge( HB_FHANDLE hFileHandle, HB_FOFFSET nOffset, HB_USHORT
ulOffsetLow = SetFilePointer( DosToWinHandle( hFileHandle ),
0, ( PLONG ) &ulOffsetHigh, SEEK_CUR );
nPos = ( ( HB_FOFFSET ) ulOffsetHigh << 32 ) | ulOffsetLow;
if( nPos == ( ULONG ) INVALID_SET_FILE_POINTER )
nPos = 0;
}
hb_vmLock();
}
@@ -2516,6 +2522,8 @@ HB_FOFFSET hb_fsSeekLarge( HB_FHANDLE hFileHandle, HB_FOFFSET nOffset, HB_USHORT
if( nPos == ( HB_FOFFSET ) -1 )
{
nPos = lseek64( hFileHandle, 0L, SEEK_CUR );
if( nPos == ( HB_FOFFSET ) -1 )
nPos = 0;
}
hb_vmLock();
}

View File

@@ -1384,6 +1384,14 @@ const char * hb_clsFuncName( HB_USHORT uiClass )
return NULL;
}
PHB_SYMB hb_clsFuncSym( HB_USHORT uiClass )
{
if( uiClass && uiClass <= s_uiClasses )
return s_pClasses[ uiClass ]->pClassFuncSym;
else
return NULL;
}
const char * hb_clsMethodName( HB_USHORT uiClass, HB_USHORT uiMethod )
{
if( uiClass && uiClass <= s_uiClasses &&
@@ -3811,7 +3819,7 @@ HB_FUNC( __CLSINSTSUPER )
pObject->item.asArray.value->uiClass = 0;
else if( hb_vmRequestQuery() == 0 )
{
hb_snprintf( szDesc, sizeof( szDesc ),
hb_snprintf( szDesc, sizeof( szDesc ),
"Super class '%s' does not return an object",
pClassFuncSym->szName );
hb_errRT_BASE( EG_ARG, 3002, "Super class does not return an object", HB_ERR_FUNCNAME, 0 );

View File

@@ -2018,14 +2018,14 @@ FUNCTION hbmk2( aArgs, nArgTarget, /* @ */ lPause, nLevel )
CASE cParamL == "-beep-" .OR. ;
cParamL == "-nobeep" ; hbmk[ _HBMK_lBEEP ] := .F.
CASE cParamL == "-rebuild"
hbmk[ _HBMK_lINC ] := .T.
IF nLevel == 1
hbmk[ _HBMK_lREBUILD ] := .T.
ENDIF
CASE cParamL == "-rebuildall"
hbmk[ _HBMK_lINC ] := .T.
hbmk[ _HBMK_lREBUILD ] := .T.