Commit Graph

9090 Commits

Author SHA1 Message Date
Viktor Szakats
cd96daef69 2008-09-25 00:22 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* make_b32.mak
  * make_gcc.mak
  * make_vc.mak
  * harbour.spec
  * source/rtl/hbgtcore.c
  * source/rtl/Makefile
  * source/rtl/gtsys.c
  * config/w32/poccce.cf
  * config/w32/xcc.cf
  * config/w32/pocc.cf
    % Removed HB_GT_DEFAULT envvar, which was the exact synonym 
      of HB_GT_LIB. Please use HB_GT_LIB instead, if you - by any 
      chance - want to change the default GT at Harbour build-time.

  * tests/speedtst.prg
    ! Fixed to delete temp .dbf files before exiting.
2008-09-24 22:22:57 +00:00
Przemyslaw Czerpak
e58b37da88 2008-09-24 20:30 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/estack.c
    ! fixed stack preloading - it should be after checking if stack
      exist :)
2008-09-24 18:31:00 +00:00
Przemyslaw Czerpak
8387f4be99 2008-09-24 18:27 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/bin/hb-func.sh
    * reverted modification for import attributes - this will be changed
      in the future to function calls
2008-09-24 16:28:21 +00:00
Viktor Szakats
e2564e223e 2008-09-24 18:17 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* utils/hbdoc/hbdoc.prg
  * utils/hbmake/hbmake.prg
  * utils/hbrun/hbrun.prg
    % One function made STATIC.
2008-09-24 16:18:11 +00:00
Viktor Szakats
a5a960784d 2008-09-24 17:58 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* utils/hbrun/hbrun.prg
    + Added REQUESTs for GTSTD, GTCGI, GTPCA (these GTs are 
      available on all platforms).
    % Removed explicit GT defaulting logic (now identical to 
      the one in RTL).
2008-09-24 15:59:28 +00:00
Viktor Szakats
cb7b1a831c 2008-09-24 16:18 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/vm/fm.c
    + Enabled dlmalloc (HB_FM_DL_ALLOC) for MSVC, BCC and MINGW builds.
    ; It's possible to disable dlmalloc with HB_FM_STD_ALLOC 
      for testing purposes.
2008-09-24 14:19:05 +00:00
Viktor Szakats
ea0b8c9f82 2008-09-24 16:06 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* bin/bld.bat
  * bin/bld_os2.cmd
    * HARBOURFLAGS removed as a public envvar to setup Harbour 
      parameters. Use PRG_USR instead.

  * common.mak
    ! Fixed after recent modification.

  * source/compiler/cmdcheck.c
    * Minor formatting.
2008-09-24 14:07:22 +00:00
Przemyslaw Czerpak
b0a49b7ba1 2008-09-24 14:53 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/dynsym.c
  * harbour/source/vm/arrays.c
  * harbour/source/vm/memvars.c
    ! fixed three typos which broke HB_TR_DEBUG messages
2008-09-24 12:54:41 +00:00
Przemyslaw Czerpak
47e5d68b82 2008-09-24 13:57 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/compiler/cmdcheck.c
    ! fixed starting index in parsed parameters. argv[0] is
      application name with path not user parameter. Parsing
      it was giving unpredictable results if harbour binaries
      were located in path having option delimiters in name
2008-09-24 11:57:47 +00:00
Viktor Szakats
e0f22d4bd0 2008-09-24 12:47 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* harbour-ce-spec
  * harbour-w32-spec
  * harbour.spec
  * make_xmingwce.sh
    % Some remaining explicit GT defaultings removed. Relying on 
      RTL source code.

  * include/hbsetup.h
    ! Disabled HB_MT_VM for HB_WINCE.
2008-09-24 10:52:12 +00:00
Viktor Szakats
6b8ec38aec 2008-09-24 12:31 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/vm/vmmt/Makefile
    ! Possible fix for mingw build error:
      make: *** mainstd: No such file or directory.  Stop.
      make[3]: *** [first] Error 2
      make[2]: *** [first] Error 2
    ; Please review.

    ; TOFIX: These DLALLOC warnings are present with MinGW 4.3.2
             In file included from ../../fm.c:127:
             ../../dlmalloc.c:1144: warning: ignoring #pragma warning 
             In file included from ../../fm.c:127:
             ../../dlmalloc.c: In function 'sys_alloc':
             ../../dlmalloc.c:3396: warning: statement with no effect
2008-09-24 10:31:40 +00:00
Viktor Szakats
cb657c0fb5 2008-09-24 12:12 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* common.mak
  * source/rtl/gtgui/Makefile
  - source/rtl/gtgui/gtdef.c
    - Removed HB_GTGUI_HACK to masquerade GTGUI under a different 
      name and to make Windows users happier. Instead of hacking
      Windows users with GUI programs should simply use 
      this in their code:
      --
      PROCEDURE HB_GTSYS
         REQUEST HB_GT_GUI_DEFAULT
         RETURN
      --
    ; This clears up a few exceptions, make hacks and a few possible 
      confusions.
2008-09-24 10:13:27 +00:00
Viktor Szakats
8e4473cded 2008-09-24 02:26 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* make_gcc.sh
  * make_gnu_os2.cmd
  * make_gnu.bat
  * make_gnu.sh
  * make_tgz.sh
    % Some additional GT defaulting logic removed.
2008-09-24 01:50:19 +00:00
Viktor Szakats
47c7147ae1 2008-09-24 01:41 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbwhat/tests/whatdemo.prg
    ! SVN ID.

  + contrib/hbwhat/tests/bld_b32.bat
  + contrib/hbwhat/tests/bld_vc.bat
    + Added missing non-GNU make files.
2008-09-23 23:42:07 +00:00
Viktor Szakats
f1045db35b 2008-09-24 01:37 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/gtsys.c
    * Added HB_WINCE with GTWVT to the set of defaults.

  * config/darwin/global.cf
  * config/hpux/global.cf
  * config/linux/global.cf
  * config/sunos/global.cf
  * config/bsd/global.cf
    % Removed unnecessary defaulting to GTSTD.

  * config/os2/gcc.cf
    ! Fixed minor typo in line 24 / HB_OS2_NEW_TCP.
2008-09-23 23:38:08 +00:00
Pritpal Bedi
983b6cf980 2008-09-23 16:19 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* harbour/contrib/hbwhat
    + /tests
    + /tests/whatdemo.prg
      A demo program, very basic, will be expanded in future, together
      with gtwvt.
2008-09-23 23:15:25 +00:00
Przemyslaw Czerpak
fe42f7ca94 2008-09-24 00:44 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtsys.c
    * use GTTRM as default GT in *nixes
2008-09-23 22:45:16 +00:00
Viktor Szakats
15b49556a2 2008-09-24 00:18 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* tests/memtst.prg
    + Added #include "simpleio.ch" to allow output redirection.

  * bin/bld.bat
  * bin/bld_os2.cmd
    * Removed any HB_GT_LIB "selection" logic. Selection is to 
      be done from source code, from now on all supported core GTs 
      are included in the lib list.
    * Few other minor cleanups.

  * source/vm/cmdarg.c
    * Commented code turned into HB_C52_STRICT branch.

  * source/vm/vmmt/Makefile
    ! Fixed cemgw -> mingwce

  * config/dos/global.cf
  * config/os2/global.cf
  * config/w32/global.cf
    % Removed unnecessary logic to select default GT. This is 
      done in Harbour source code now.

  ; TOFIX: After MT changes, mingw32 build gives this new error:
           make: *** mainstd: No such file or directory.  Stop.
           make[3]: *** [first] Error 2
           make[2]: *** [first] Error 2
2008-09-23 22:24:26 +00:00
Przemyslaw Czerpak
9440cf8e4c 2008-09-23 21:42 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/bin/hb-func.sh
    * use HB_IMPORT instead of hardcoded attributes in hb* scripts

  * harbour/source/common/hbver.c
    * generate different info for POCC and XCC compilers

  * harbour/source/rdd/dbfcdx/dbfcdx1.c
    * reduce header validation to not report clipper indexes as corrupted
2008-09-23 19:43:34 +00:00
Viktor Szakats
09b0509b08 2008-09-23 20:41 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/vm/extrap.c
    ! Fixed to close .log file before showing MessageBox().
      [TOMERGE 1.0]

    + Don't attempt to write into .log file if the _SET_HBOUTLOG 
      filename is empty.

    ; TOFIX: Remove all remaining MessageBox() calls from 
             Harbour sources.
2008-09-23 18:42:29 +00:00
Viktor Szakats
2db644f214 2008-09-23 18:56 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/rddads/adsmgmnt.c
    ! Blind fix to ADSMGGETWORKERTHREADACTIVITY() where the 
      first element in list wasn't returned.
      Please test, I couldn't.

  * source/vm/fm.c
    ! Stupid typo. (I guess I'm completely confused by separated 
      "#" and preprocessor command :/ Second typo in two lines.)
2008-09-23 16:57:24 +00:00
Przemyslaw Czerpak
2ad4dc0df1 2008-09-23 17:09 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/config/os2/gcc.cf
    * enabled -DTCPV40HDRS in default builds, can be disabled by
      setting HB_OS2_NEW_TCP=yes environment variable
2008-09-23 15:10:10 +00:00
Pritpal Bedi
8138f06023 2008-09-23 07:05 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* harbour/contrib/hbwhat/wincorec.c
    % hb_retptr() => HB_RETWI()
2008-09-23 14:07:11 +00:00
Pritpal Bedi
337b4d3602 2008-09-23 06:51 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* harbour/contrib/hbwin/win_ole.c
    % hb_vmPushDynDym() => hb_vmPushDynSym()
2008-09-23 13:53:11 +00:00
Przemyslaw Czerpak
c8d341cefb 2008-09-23 15:38 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/codebloc.c
    * updated old and not longer valid comment

  * harbour/source/vm/memvars.c
    * minor code formatting

  * harbour/source/common/expropt2.c
    ! fixed bug in power math expression optimization caused
      by two lines left in the code by mistake. Many thanks to
      Maurilio for locating the problem.

  * harbour/include/hbstack.h
  * harbour/source/vm/estack.c
  * harbour/source/vm/hvm.c
    % added support for buffering hb_stack TLS access be preloading
      the stack pointer into C stack function local variables.
      Please make speed tests for MT mode with different C compilers
      and different platforms.
2008-09-23 13:39:35 +00:00
Viktor Szakats
f237b5c86c 2008-09-23 14:50 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/rddads/adsmgmnt.c
    * Minor.
2008-09-23 12:50:35 +00:00
Viktor Szakats
454b3b49e0 2008-09-23 14:38 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbole/ole2.c
  * contrib/hbgf/hbgfwin/winapi.c
  * contrib/hbgf/hbgfos2/os2pm.c
  * contrib/hbwin/win_ole.c
  * contrib/hbwhat/wincorec.c
  * source/rtl/do.c
  * source/rdd/workarea.c
    % hb_vmPushSymbol( hb_dynsymSymbol( p ) ) -> hb_vmPushDynSym( p )

  * contrib/hbwhat/wincorec.c
    ! WHT__GETDLGPROC() fixed.
    ! hb_vmPushSymbol( hb_itemGetSymbol( p ) ) -> hb_vmPushDynSym( p )

  * contrib/hbgf/hbgfwin/winapi.c
  * contrib/hbwhat/wincorec.c
  * contrib/hbwhat/whtmsg.c
  * contrib/hbwhat/whtbmp.c
  * contrib/hbwhat/whtcomm.c
  * contrib/hbwhat/whthead.c
  * contrib/hbwhat/whthead.c
  * contrib/hbwhat/whtkbrd.c
  * contrib/hbwhat/whtlv.c
  * contrib/hbwhat/whttext.c
  * contrib/hbwhat/whtwnd.c
  * contrib/hbwhat/whtdlg.c
  * contrib/hbwhat/whttab.c
    ! Fixed few LPARAM/WPARAM passings to be 64-bit compatible.
      (hb_parnl()/hb_parni() -> hb_parnint())

  * source/vm/thread.c
  * source/rtl/do.c
  * source/rdd/usrrdd/usrrdd.c
  * contrib/hbwhat/whtlv.c
  * contrib/hbwhat/whtfont.c
    % hb_vmPushSymbol( hb_itemGetSymbol( p ) ) -> hb_vmPush()
    ; QUESTION/TOFIX: In whtlv.c and whtfont.c this may be wrong, 
                      and hb_vmPushDynSym() could be needed instead.
                      Can someone take a look pls?
2008-09-23 12:48:23 +00:00
Antonio Carlos Pantaglione
b45ddd75e0 2008-09-23 08:45 UTC-0300 Antonio Carlos Pantaglione <toninho@fwi.com.br>
* contrib/rddads/adsmgmnt.c
     + ADSMGSETHANDLE( nHandle ) to set an existing connection handle
     ! ADSMGGETUSERNAMES() that was skipping first user
2008-09-23 11:42:39 +00:00
Viktor Szakats
a1a7c1cb07 Fix to prev 2008-09-23 10:26:19 +00:00
Viktor Szakats
fac1ea54e2 Two clarifications to some of my entries. 2008-09-23 10:15:17 +00:00
Viktor Szakats
ebaa3ee424 2008-09-23 11:27 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/vm/fm.c
    ! Enabled USE_DL_PREFIX for _MSC_VER compilers.
      This may be refined, but without this setting MSVS 2008 
      would give an error on exit and GPF.
2008-09-23 09:28:39 +00:00
Viktor Szakats
e7fdff1641 2008-09-23 11:24 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbthread.h
    % Enabled TLS for _MSC_VER compilers.
    ; Tested with MSVS 2008 32-bit. Someone pls test with 
      older/other MSVC compilers (especially MSVC6 and WinCE mode)
      to refine the default setting if needed.
2008-09-23 09:25:33 +00:00
Przemyslaw Czerpak
afd254adc2 2008-09-22 22:08 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/thread.c
    ! fixed GPF when hb_threadSelf() was executed from thread without
      allocated ID object (f.e. main thread)
2008-09-22 20:09:27 +00:00
Antonio Carlos Pantaglione
19b2d7a10e 2008-09-22 16:19 UTC-0300 Antonio Carlos Pantaglione <toninho@fwi.com.br>
* harbour/contrib/rddads/ads1.c
    * using AdsCreateIndex61 when ADS_LIB_VERSION >= 610. This functions use 
      ADS_DEFAULT as index page size parameter and force Advantage to compute
      a page size based on the key size to provide optimal balancing.
2008-09-22 19:16:31 +00:00
Przemyslaw Czerpak
700a0c4805 2008-09-22 20:54 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rdd/dbfntx/dbfntx1.c
  * harbour/source/rdd/dbfcdx/dbfcdx1.c
    * do not allow to close production index by ordBagClear() when
      strict FP compatibility is set for production index or when
      _SET_AUTOPEN is enabled. It compatible behavior to ordListClear()
      function
2008-09-22 18:55:21 +00:00
Przemyslaw Czerpak
afb1c7cd2d 2008-09-22 20:40 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/classes.c
  * harbour/source/rdd/workarea.c
    * pacified BCC warnings

  * harbour/source/debug/dbgwa.prg
  * harbour/source/debug/debugger.prg
  * harbour/source/debug/dbghelp.prg
    * eliminated two static variables
2008-09-22 18:41:29 +00:00
Antonio Carlos Pantaglione
3876fb6d73 2008-09-22 14:34 UTC-0300 Antonio Carlos Pantaglione <toninho@fwi.com.br>
% source/rtl/dbedit.prg
  % source/rtl/dirscan.prg
  % source/rtl/errorsys.prg
  % source/rtl/hbini.prg
  % source/rtl/listbox.prg
  % source/rtl/objfunc.prg
  % source/rtl/tbrowse.prg
  % source/rtl/tclass.prg
  % source/rtl/tget.prg
  % source/rtl/tgetlist.prg
    % Code formating and some local decarations inlined
2008-09-22 17:39:16 +00:00
Przemyslaw Czerpak
f05cbbaaaf 2008-09-22 19:32 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/ChangeLog
   ! corrected previous ChangeLog entry: instead of hb_waDetach()/
     hb_waRequest() should be db_dbDetach()/hb_dbRequest()

  * harbour/source/vm/hvm.c
   * disabled PRG tracing in default builds. If someone wants to
     use this feature then he should recompile Harbour with HB_PRG_TRACE
     macro. In such case tracing can be enabled/disabled by __TRACEPRGCALLS()
     function. HB_NO_TRACE macro is not longer usable - it's default in
     current code.

  * harbour/source/vm/classes.c
    + added PRG function __clsPreallocate() which extends the size of
      classes buffer to given value to avoid later RT reallocations.
      It may be useful in some very seldom cases for MT programs which
      will allocate dynamically at runtime more then 16386 classes.
      In practice rather impossible though who knows ;-)

  * harbour/source/rdd/workarea.c
    * set default preallocation size for RDD nodes to 128
    + added PRG function __rddPreallocate() which extends the size of
      RDD nodes buffer to given value to avoid later RT reallocations.
      It may be useful in some very seldom cases for MT programs which
      will register dynamically at runtime more then 128 RDDs when other
      threads are active and may use RDD nodes.

  * harbour/include/hbrddcdx.h
  * harbour/source/rdd/dbfcdx/dbfcdx1.c
    + added ORDLSTDELETE() method.
      Now ordbagClear() should work for DBFCDX.
2008-09-22 17:32:36 +00:00
Viktor Szakats
65d6f33e56 2008-09-22 19:24 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* bin/bld.bat
    - Removed recently added cw32mt.lib.
    ; Now, for MT builds 'set HB_USER_LIBS=cw32mt.lib' should 
      be used. Where cw32mt.lib may also be cp32mt.lib, 
      cp32mti.lib, cw32mti.lib depending on other factors.
      Notice that even this would only work if Harbour was 
      built with 'set HB_BUILD_ST=no'.
2008-09-22 17:28:11 +00:00
Viktor Szakats
216164681e 2008-09-22 19:19 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* make_b32.mak
  * make_vc.mak
  * common.mak
  * source/rtl/hbgtcore.c
    ! Any messing with HB_GT_LIB and HB_GT_DEFAULT was removed 
      from non-GNU make files, to leave these things to the 
      source code itself (just like in GNU-make).
    + Added automatic selection of GTWVT from source code, 
      so that it also works in GNU-make.

  * source/rdd/dbfcdx/dbfcdx1.c
    ! Restored RTE behaviour when key length is zero.
    ! Recently added C53 compatible but C52 incompatible 
      RTE enabled only if HB_COMPAT_C53 and HB_C52_STRICT 
      are both #defined to not make valid C52 apps crash.
    ; Someone pls review me.
2008-09-22 17:21:44 +00:00
Przemyslaw Czerpak
400cb4e34d 2008-09-22 16:37 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbregex.c
   * added hack to force linking newer PCRE versions not the one included
     in BCC RTL when Harbour is compiled without HB_PCRE_REGEX_BCC.
     If user application will uses regex expressions (directly or indirectly
     by some RTL functions) then lining it without HBPCE should give link
     time error that pcre_config() function is missing.
2008-09-22 14:37:51 +00:00
Przemyslaw Czerpak
d9e592e202 2008-09-22 16:14 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbstack.h
  * harbour/source/vm/estack.c
    + added support for using stack macros without native compiler TLS
      support in MT mode.
    * enabled stack macros by default for OS2 MT builds
      David, if possible please try speedtst.prg with current MT HVM
2008-09-22 14:15:18 +00:00
Przemyslaw Czerpak
934e7f3e8e 2008-09-22 15:23 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbinet.c
    ! fixed W32 compilation
2008-09-22 13:24:14 +00:00
Pritpal Bedi
d12e752d5f 2008-09-21 20:29 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* harbour/contrib/hbwhat/*.c;*.prg
    ! Prefixed every WHAT specific functions with "WHT_" and 
      Windows specific functions with "VWN_"

    ; NOTE: Now onwards HBWhat.lib use proprietory namespace and 
      can be used alongwith any other WINAPI library. In the next 
      few days I will upload a working demo taking care of all
      the components together.
  
    ; TOFIX: HBWhat.lib is not usable as is still.
      Viktor, please examine these two functions in wincorec.c
         HB_FUNC( WHT__GETDLGPROC )
         BOOL CALLBACK __DlgProc( H... )
      where I have changed the casts to original code. Only then
      I could get it worked. It is only for WHT_DialogBox() and 
      I am sure until we fix it no other component will work.
      It should be easy, IMO, just I do not know the whole story.
      Probably the above change will not let HbWhat to be compliled
      by other compilers or they will produce warnings.
2008-09-22 03:47:17 +00:00
Przemyslaw Czerpak
4be2b3ea73 2008-09-22 04:27 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbinet.c
    ! fixed typo in previous commit which broke MS-Win builds
    * check hb_vmReaquestQuery() after executing use codeblocks
2008-09-22 02:27:54 +00:00
Przemyslaw Czerpak
b34b792443 2008-09-22 03:49 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbstack.h
  * harbour/source/vm/estack.c
  * harbour/source/vm/hvm.c
    + added support for nested hb_vmUnlock()/hb_vmLock() calls

  * harbour/source/rtl/hbinet.c
    * encapsulated all potentially slow inet functions inside
      hb_vmUnlock()/hb_vmLock() calls
2008-09-22 01:50:21 +00:00
Przemyslaw Czerpak
a8aac5cae5 2008-09-22 02:34 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbvm.h
  * harbour/source/vm/hvm.c
  * harbour/source/vm/thread.c
    + added .prg function hb_threadSelf() -> <pThID> | NIL
      It returns thread ID pointer variable or NIL when thread was
      registered without it (main thread and some 3-rd party threads
      created by C API)

  * harbour/source/vm/hvm.c
    * protect s_InitFunctions and s_ExitFunctions by mutex

  * harbour/source/common/hbverdsp.c
    * use hb_verBuildDate() instead of __DATE__ and __TIME__ in
      hb_verBuildInfo() function to report the same time in both
      cases.
2008-09-22 00:34:52 +00:00
Przemyslaw Czerpak
c1c574142e 2008-09-21 23:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/source/vm/arrays.c
    + added hb_arrayGetPtrGC(), hb_arrayGetSymbol(), hb_arraySetSymbol()

  * harbour/include/hbapi.h
  * harbour/source/vm/dynsym.c
    + added hb_dynsymProtectEval(). Works like hb_dynsymEval() but
      keeps dynamic symbol table locked during whole execution.
      It's faster then hb_dynsymEval() but user function may not
      access dynamic symbol tbale to not cause recursive locks
    + added protection against possible dynamic symbol table resizing
      during hb_dynsymEval() by other threads.

  * harbour/include/hbapi.h
  * harbour/source/vm/memvars.c
    + added hb_memvarSaveInArray( int iScope, BOOL fCopy ) and
      hb_memvarRestoreFromArray( PHB_ITEM pArray )
    % use hb_dynsymProtectEval() in places where it's safe

  * harbour/include/Makefile
  + harbour/include/hbthread.ch
    + added header file with thread constant definitions:
         HB_THREAD_INHERIT_PUBLIC
         HB_THREAD_INHERIT_PRIVATE
         HB_THREAD_INHERIT_MEMVARS
         HB_THREAD_MEMVARS_COPY

  * harbour/include/hbthread.h
  * harbour/source/vm/hvm.c
  * harbour/source/vm/thread.c
    + added support for inheriting visible memvars from current
      thread when new thread is created. Memvars in child thread
      can be shared with parrent or they can be copied. See HB_THREAD_*
      attributes defined in hbthread.ch, f.e.:
         hb_threadStart( HB_THREAD_INHERIT_PUBLIC, @thFunc() )
      or:
         hb_threadStart( HB_BITOR( HB_THREAD_INHERIT_MEMVARS + ;
                                   HB_THREAD_MEMVARS_COPY ), ;
                          @thFunc() )
      Please note that when child thread creates new PUBLIC variable
      which didn't existed when thread was started then it's visible
      only for this thread and optionally for its child threads but
      not for parent thread.
      Please also remember that write access to shared memvars have
      to be protected by users.

  + harbour/tests/mt/mttest08.prg
    + added test code for thread memvars inheritance
2008-09-21 21:04:47 +00:00
Przemyslaw Czerpak
2f2dc484a8 2008-09-20 05:37 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/common.mak
  * harbour/source/rdd/Makefile
    ! restored dbdetach.* in makefiles

  + harbour/source/rdd/dbdetach.c
    + added file I forgot to add in previous commit

  * harbour/source/vm/thread.c
    + added support for using function name as string in HB_THREADSTART()
    + added support for thread attributes. They will be used in the future.
2008-09-20 03:37:41 +00:00
Teo Fonrouge
0705a60aeb 2008-09-19 21:28 UTC-0500 Teo Fonrouge (teo/at/windtelsoft/dot/com)
* common.mak
  * source/rdd/Makefile
    * removed dbdetach.* from make constructors
2008-09-20 02:17:21 +00:00