2013-06-04 14:20 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/gtqtc/gtqtc1.cpp
* added workaround for missing MT synchronization in QT for XLIB
QT was designed to use screen widgets only in main thread so
it's only workaround which helps but I cannot guaranti
* contrib/hbmzip/mzip.c
* workaround for wrong st_mtime type in struct stat on android
* src/rtl/hbsocket.c
* do not check if IPPROTO_IP is defined, on some platforms like
android it's only enum type. Warning if it exploits some problems
on some seldom used platforms/compilers then please report it.
* src/vm/hvm.c
* minor
* package/mpkg_ver.sh
* do not use bash extensions
* package/harbour-wce.spec.in
* package/harbour-win.spec.in
* package/harbour.spec
* package/mpkg_rpm.sh
* package/mpkg_rpm_wce.sh
* package/mpkg_rpm_win.sh
* removed bash from dependencies list
This commit is contained in:
@@ -10,6 +10,34 @@
|
||||
* Change, ! Fix, % Optimization, + Addition, - Removal, ; Comment
|
||||
*/
|
||||
|
||||
2013-06-04 14:20 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
|
||||
* contrib/gtqtc/gtqtc1.cpp
|
||||
* added workaround for missing MT synchronization in QT for XLIB
|
||||
QT was designed to use screen widgets only in main thread so
|
||||
it's only workaround which helps but I cannot guaranti
|
||||
|
||||
* contrib/hbmzip/mzip.c
|
||||
* workaround for wrong st_mtime type in struct stat on android
|
||||
|
||||
* src/rtl/hbsocket.c
|
||||
* do not check if IPPROTO_IP is defined, on some platforms like
|
||||
android it's only enum type. Warning if it exploits some problems
|
||||
on some seldom used platforms/compilers then please report it.
|
||||
|
||||
* src/vm/hvm.c
|
||||
* minor
|
||||
|
||||
* package/mpkg_ver.sh
|
||||
* do not use bash extensions
|
||||
|
||||
* package/harbour-wce.spec.in
|
||||
* package/harbour-win.spec.in
|
||||
* package/harbour.spec
|
||||
* package/mpkg_rpm.sh
|
||||
* package/mpkg_rpm_wce.sh
|
||||
* package/mpkg_rpm_win.sh
|
||||
* removed bash from dependencies list
|
||||
|
||||
2013-06-03 16:45 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
|
||||
* src/rtl/hbtoken.c
|
||||
+ added support for passing token parser parameters as bit field number.
|
||||
|
||||
@@ -56,6 +56,23 @@ static HB_GT_FUNCS SuperTable;
|
||||
|
||||
#define HB_GTQTC_GET(p) ( ( PHB_GTQTC ) HB_GTLOCAL( p ) )
|
||||
|
||||
|
||||
#ifndef HB_QT_NEEDLOCKS
|
||||
# if defined( HB_OS_UNIX )
|
||||
# define HB_QT_NEEDLOCKS
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef HB_QT_NEEDLOCKS
|
||||
# include "hbthread.h"
|
||||
static HB_CRITICAL_NEW( s_qtcMtx );
|
||||
# define HB_QTC_LOCK() do { hb_threadEnterCriticalSection( &s_qtcMtx )
|
||||
# define HB_QTC_UNLOCK() hb_threadLeaveCriticalSection( &s_qtcMtx ); } while( 0 )
|
||||
#else
|
||||
# define HB_QTC_LOCK() do {} while( 0 )
|
||||
# define HB_QTC_UNLOCK() do {} while( 0 )
|
||||
#endif
|
||||
|
||||
static QApplication * s_qtapp = NULL;
|
||||
|
||||
/* *********************************************************************** */
|
||||
@@ -1537,7 +1554,9 @@ static void hb_gt_qtc_setWindowFlags( PHB_GTQTC pQTC, Qt::WindowFlags flags, HB_
|
||||
currFlags &= ~flags;
|
||||
|
||||
pQTC->qWnd->setWindowFlags( currFlags );
|
||||
HB_QTC_LOCK();
|
||||
pQTC->qWnd->show();
|
||||
HB_QTC_UNLOCK();
|
||||
}
|
||||
|
||||
static void hb_gt_qtc_setWindowState( PHB_GTQTC pQTC, Qt::WindowStates state, HB_BOOL fSet )
|
||||
@@ -1550,7 +1569,9 @@ static void hb_gt_qtc_setWindowState( PHB_GTQTC pQTC, Qt::WindowStates state, HB
|
||||
currState &= ~state;
|
||||
|
||||
pQTC->qWnd->setWindowState( currState );
|
||||
HB_QTC_LOCK();
|
||||
pQTC->qWnd->show();
|
||||
HB_QTC_UNLOCK();
|
||||
}
|
||||
|
||||
static void hb_gt_qtc_initWindow( PHB_GTQTC pQTC, HB_BOOL fCenter )
|
||||
@@ -1577,7 +1598,9 @@ static void hb_gt_qtc_createConsoleWindow( PHB_GTQTC pQTC )
|
||||
|
||||
hb_gt_qtc_initWindow( pQTC, HB_FALSE );
|
||||
|
||||
HB_QTC_LOCK();
|
||||
pQTC->qWnd->show();
|
||||
HB_QTC_UNLOCK();
|
||||
pQTC->qWnd->update();
|
||||
}
|
||||
|
||||
@@ -1735,10 +1758,12 @@ static int hb_gt_qtc_ReadKey( PHB_GT pGT, int iEventMask )
|
||||
{
|
||||
int iKey;
|
||||
|
||||
HB_QTC_LOCK();
|
||||
if( pQTC->qEventLoop )
|
||||
pQTC->qEventLoop->processEvents( QEventLoop::AllEvents );
|
||||
else
|
||||
QApplication::processEvents( QEventLoop::AllEvents );
|
||||
HB_QTC_UNLOCK();
|
||||
|
||||
if( hb_gt_qtc_getKeyFromInputQueue( pQTC, &iKey ) )
|
||||
return iKey;
|
||||
|
||||
@@ -759,6 +759,7 @@ static int hb_zipStoreFile( zipFile hZip, int iParamFileName, int iParamZipName,
|
||||
{
|
||||
struct stat statbuf;
|
||||
struct tm st;
|
||||
time_t ftime;
|
||||
char * pszFree;
|
||||
|
||||
if( stat( hb_fsNameConv( szFileName, &pszFree ), &statbuf ) == 0 )
|
||||
@@ -784,10 +785,11 @@ static int hb_zipStoreFile( zipFile hZip, int iParamFileName, int iParamZipName,
|
||||
( ( statbuf.st_mode & S_IWUSR ) ? 0x00800000 : 0 ) |
|
||||
( ( statbuf.st_mode & S_IRUSR ) ? 0x01000000 : 0 );
|
||||
|
||||
ftime = statbuf.st_mtime;
|
||||
# if defined( HB_HAS_LOCALTIME_R )
|
||||
localtime_r( &statbuf.st_mtime, &st );
|
||||
localtime_r( &ftime, &st );
|
||||
# else
|
||||
st = *localtime( &statbuf.st_mtime );
|
||||
st = *localtime( &ftime );
|
||||
# endif
|
||||
|
||||
zfi.tmz_date.tm_sec = st.tm_sec;
|
||||
|
||||
@@ -32,8 +32,8 @@ License: GPL (plus exception)
|
||||
Group: Development/Languages
|
||||
URL: http://harbour-project.org/
|
||||
Source: harbour-%{version}.src.tar.gz
|
||||
BuildPrereq: gcc binutils bash
|
||||
Requires: gcc binutils bash sh-utils cegcc-mingw32ce harbour = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
BuildPrereq: gcc binutils
|
||||
Requires: gcc binutils sh-utils cegcc-mingw32ce harbour = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Provides: %{name}
|
||||
BuildRoot: /tmp/%{name}-%{version}-root
|
||||
|
||||
|
||||
@@ -32,8 +32,8 @@ License: GPL (plus exception)
|
||||
Group: Development/Languages
|
||||
URL: http://harbour-project.org/
|
||||
Source: harbour-%{version}.src.tar.gz
|
||||
BuildPrereq: gcc binutils bash
|
||||
Requires: gcc binutils bash sh-utils harbour = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
BuildPrereq: gcc binutils
|
||||
Requires: gcc binutils sh-utils harbour = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Provides: %{name}
|
||||
BuildRoot: /tmp/%{name}-%{version}-root
|
||||
|
||||
|
||||
@@ -92,8 +92,8 @@ License: GPL (plus exception)
|
||||
Group: Development/Languages
|
||||
URL: http://harbour-project.org/
|
||||
Source: %{name}-%{version}.src.tar.gz
|
||||
BuildPrereq: gcc binutils bash %{!?_without_curses: ncurses-devel} %{!?_without_gpm: gpm-devel}
|
||||
Requires: gcc binutils bash sh-utils %{name}-lib = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
BuildPrereq: gcc binutils %{!?_without_curses: ncurses-devel} %{!?_without_gpm: gpm-devel}
|
||||
Requires: gcc binutils sh-utils %{name}-lib = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Provides: %{name} harbour lib%{name}.so
|
||||
BuildRoot: /tmp/%{name}-%{version}-root
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ test_reqrpm()
|
||||
rpm -q --whatprovides "$1" >/dev/null 2>&1
|
||||
}
|
||||
|
||||
NEED_RPM="make gcc binutils bash"
|
||||
NEED_RPM="make gcc binutils"
|
||||
|
||||
FORCE=""
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ hb_ver=`get_hbver`
|
||||
hb_verstat=`get_hbverstat`
|
||||
[ -n "${hb_verstat}" ] || hb_verstat="0"
|
||||
|
||||
NEED_RPM="make gcc binutils bash cegcc-mingw32ce"
|
||||
NEED_RPM="make gcc binutils cegcc-mingw32ce"
|
||||
|
||||
FORCE=""
|
||||
|
||||
|
||||
@@ -59,7 +59,7 @@ hb_ver=`get_hbver`
|
||||
hb_verstat=`get_hbverstat`
|
||||
[ -n "${hb_verstat}" ] || hb_verstat="0"
|
||||
|
||||
NEED_RPM="make gcc binutils bash"
|
||||
NEED_RPM="make gcc binutils"
|
||||
|
||||
FORCE=""
|
||||
|
||||
|
||||
@@ -3,14 +3,13 @@
|
||||
# ---------------------------------------------------------------
|
||||
# Copyright 2003 Przemyslaw Czerpak <druzus@priv.onet.pl>
|
||||
# small set of functions used by Harbour scripts
|
||||
# warning: some bash extensions are used
|
||||
#
|
||||
# See COPYING.txt for licensing terms.
|
||||
# ---------------------------------------------------------------
|
||||
|
||||
get_hbver()
|
||||
{
|
||||
hb_rootdir="${1-..}"
|
||||
if [ -z "$hb_rootdir" ]; then hb_rootdir=".."; fi
|
||||
FVER="${hb_rootdir}/include/hbver.h"
|
||||
MAJOR=`sed -e '/HB_VER_MAJOR/ !d' -e 's/[^0-9]*\([^ ]*\).*/\1/g' "${FVER}"`
|
||||
MINOR=`sed -e '/HB_VER_MINOR/ !d' -e 's/[^0-9]*\([^ ]*\).*/\1/g' "${FVER}"`
|
||||
@@ -20,7 +19,7 @@ get_hbver()
|
||||
|
||||
get_hbverstat()
|
||||
{
|
||||
hb_rootdir="${1-..}"
|
||||
if [ -z "$hb_rootdir" ]; then hb_rootdir=".."; fi
|
||||
FVER="${hb_rootdir}/include/hbver.h"
|
||||
VERSTAT=`sed -e '/HB_VER_STATUS/ !d' -e 's/[^\"]*\"\([^\"]*\).*/\1/g' "${FVER}"`
|
||||
echo "${VERSTAT}"
|
||||
|
||||
@@ -2650,7 +2650,7 @@ int hb_socketSetMulticast( HB_SOCKET sd, int af, const char * szAddr )
|
||||
{
|
||||
if( af == HB_SOCKET_AF_INET )
|
||||
{
|
||||
#if defined( IP_ADD_MEMBERSHIP ) && defined( IPPROTO_IP )
|
||||
#if defined( IP_ADD_MEMBERSHIP ) /* && defined( IPPROTO_IP ) */
|
||||
struct ip_mreq mreq;
|
||||
int ret;
|
||||
|
||||
|
||||
@@ -5442,7 +5442,7 @@ static void hb_vmArrayDim( HB_USHORT uiDimensions ) /* generates an uiDimensions
|
||||
static void hb_vmHashGen( HB_SIZE nElements ) /* generates an nElements Hash and fills it from the stack values */
|
||||
{
|
||||
HB_STACK_TLS_PRELOAD
|
||||
PHB_ITEM pHash, pKey, pVal;
|
||||
PHB_ITEM pHash;
|
||||
int iPos;
|
||||
|
||||
HB_TRACE( HB_TR_DEBUG, ( "hb_vmHashGen(%" HB_PFS "u)", nElements ) );
|
||||
@@ -5454,8 +5454,8 @@ static void hb_vmHashGen( HB_SIZE nElements ) /* generates an nElements Hash and
|
||||
iPos = - ( int ) nElements;
|
||||
while( iPos )
|
||||
{
|
||||
pKey = hb_stackItemFromTop( iPos++ );
|
||||
pVal = hb_stackItemFromTop( iPos++ );
|
||||
PHB_ITEM pKey = hb_stackItemFromTop( iPos++ );
|
||||
PHB_ITEM pVal = hb_stackItemFromTop( iPos++ );
|
||||
if( HB_IS_HASHKEY( pKey ) )
|
||||
hb_hashAdd( pHash, pKey, pVal );
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user