Commit Graph

56 Commits

Author SHA1 Message Date
Przemyslaw Czerpak
1eea547516 2011-08-04 01:51 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/vm/runner.c
    * do not execute EXIT procedures inside HB_HRBDO() call.
      This modification allows to call HB_HRBDO() more then
      once for the same HRB module without activating INIT
      and EXIT procedures on each call. EXIT procedures will
      be activated when HRB modules is unloaded or on HVM QUIT.

  * harbour/contrib/hbwin/axcore.c
    ! cleaned casting
2011-08-03 23:51:25 +00:00
Przemyslaw Czerpak
6d6232d831 2011-05-18 20:45 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/axcore.c
    ! added missing AddRef() for OLE object returbed by __AXREGISTERHANDLER()
2011-05-18 18:46:11 +00:00
Viktor Szakats
744a7426dd 2011-05-09 13:32 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbwin/hbwapi.h
  * contrib/hbwin/wapi_misc.c
    * hbwapi_FileNameAtSystemDir() made static
    + hbwapi_LoadLibrarySystem() public function added
      this is safe version of LoadLibrary() when loading Windows
      system dlls. it will avoid dll hijacking vulnerability.
    ! deleted HB_EXPORT from hbwapi_t*() functions, they are
      public to this lib due to UNICODE setting dependance
    ; TODO: make hbwapi_LoadLibrarySystem() effective also for WinCE, 
            for now it will not add any system path under this platform.

  * contrib/hbwin/axcore.c
  * contrib/hbwin/mapi.c
  * contrib/hbwin/win_prn2.c
  * contrib/hbwin/win_prn3.c
  * contrib/hbwin/wapi_shellapi.c
    ! LoadLibrary() -> hbwapi_LoadLibrarySystem()
      thus fixing dll hijack vulnerability
2011-05-09 11:34:40 +00:00
Viktor Szakats
b93674121e 2011-03-09 21:32 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbzlibgz.c
    ! In block declaration in recent patch.
  * utils/hbmk2/hbmk2.prg
    ! Regression in recent xhb patch.
  * contrib/hbwin/axcore.c
    ! Format warning in trace.
2011-03-09 20:33:32 +00:00
Mindaugas Kavaliauskas
60e70eb29b 2011-02-21 16:28 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/contrib/hbwin/axcore.c
    * return NIL instead of runtime error if failed to obtain 
      connection point
    ; Please test
  * harbour/src/rtl/fscopy.c
    * added error check for read operation
2011-02-21 14:29:54 +00:00
Przemyslaw Czerpak
d2ad59df66 2011-02-09 21:23 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/axcore.c
    ! fixed double binding of ax event handler with two different
      OLE pointer items - it was causing accessing freed or reused
      by other things memory potentially with all possible bad side
      effect.
      Mindaugas, please verify me but I think that you forgot to remove
      the old binding when you were adding the code I proposed and you
      didn't leave it intentionally. Am I right?
2011-02-09 20:23:43 +00:00
Przemyslaw Czerpak
c0becdeec8 2010-12-10 09:08 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
- harbour/contrib/hbwin/oleinit.c
    * removed old OLE initialization and cleanup code which was working
      only for main thread

  * harbour/contrib/hbwin/axcore.c
  * harbour/contrib/hbwin/olecore.c
  * harbour/contrib/hbwin/hbwin.hbp
  * harbour/contrib/hbwin/hbolesrv.c
  * harbour/contrib/hbwin/legacyco.c
    + added new OLE init/exit code which is thread oriented
      WARNING: now OLE is initialized when thread executes first time
               one of Harbour OLE functions not at application startup.
               C code which uses OLE without calling any Harbour PRG
               level OLE function should initialize OLE for each thread
               calling hb_oleInit() - it's very fast function so it can
               be called without noticeable overhead. Please remember
               that such initialization should be done for each thread.
      Please test it - I do not have access to MS-Windows computer now
      so I cannot make any test myself.
2010-12-10 08:08:35 +00:00
Mindaugas Kavaliauskas
a8e4855d4b 2010-11-04 11:23 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/contrib/rddsql/sqlbase.c
    + added timestamp type support in PutValue RDD method
  * harbour/contrib/hbwin/axcore.c
    * commented out debug line to be in sync with commented out 
      function that it uses
2010-11-04 09:23:51 +00:00
Przemyslaw Czerpak
00cc4427ea 2010-10-27 18:30 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rdd/dbcmd.c
    * modified FIELDGET() and FIELDPUT() to accept
      also field name (not only field index)
      just like DBFILEGET() and DBFILEPUT()
    * modified HB_FIELDLEN(), HB_FIELDDEC(), HB_FIELDTYPE() to accept
      also field name (not only field index)

  * harbour/contrib/hbfship/hbfship.hbp
  + harbour/contrib/hbfship/fldarr.prg
  + harbour/contrib/hbfship/isdb.prg
  + harbour/contrib/hbfship/isfunc.c
  + harbour/contrib/hbfship/isbegseq.c
  + harbour/contrib/hbfship/flddeci.c
    + added FlagShip compatible functions:
         FieldGetArr( [ <nRecNo> ] ) -> <aFieldValues>
         FieldPutArr( <aFieldValues> [, <nRecNo> ] ) -> <lSuccess>
         IsDbExcl() -> <lExclusive>
         IsDbFlock() -> <lFLocked>
         IsDbRLock( [ <xRec> ] ) -> <lLocked>
         IsFunction( <cName> ) -> <lExists>
         IsBegSeq() -> <lResult>
         FieldDeci( <cFieldName> | <nFieldPos> ) -> <nDecimals>

  * harbour/contrib/hbwin/axcore.c
    * minor cleanup - replaced some 0 values with S_OK macro
2010-10-27 16:30:54 +00:00
Mindaugas Kavaliauskas
a1c6eb6da3 2010-10-14 16:45 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/contrib/hbwin/axcore.c
    ! fixed CPP compilation by using compiler macros in method calls
  * harbour/contrib/hbwin/hbwinole.h
  * harbour/contrib/hbwin/axcore.c
  * harbour/contrib/hbwin/olecore.c
    + implemented additional OLE destructors. Added Undavise() call 
      to :__hSink destructor. This fixes unresponsive OLE server app 
      behaviour after corresponding Harbour object is freed
    ; Code proposed by Przemek, some fixes applied
2010-10-14 13:46:38 +00:00
Przemyslaw Czerpak
36124d47a6 2010-10-14 08:45 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/gtstd/gtstd.c
    * updated to compile with WinCE

  * harbour/package/harbour.spec
    * modified to work with new HBMK2 translations

  * harbour/contrib/hbmzip/hbmzip.c
    ! fixed function order

  * harbour/contrib/hbwin/axcore.c
    * include <olectl.h>
    ! fixed buffer sizes in debug function
    * removed trailing spaces and tabs

  * harbour/contrib/hbwin/hbolesrv.c
    * include <tchar.h> - for some compilers which do not make it
      with OLE header files
2010-10-14 06:45:51 +00:00
Mindaugas Kavaliauskas
df744bd6ff 2010-10-14 05:45 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/contrib/hbwin/axcore.c
    + added support for obtaining default callback event interface.
      __AxRegisterHandler( pDisp, bHandler [, cIID ] ) parameter can be:
        - event interface ID, i.e. "{...}";
        - event interface name, ex., DWebBrowserEvents;
        - otherwise default event interface is tried to obtain.
    ; NOTE: some regresions are possible. IDispatch is not the default
      value for cIID. To force the previous behaviour, you should use 
      __AxRegisterHandler(,, "{00020420-0000-0000-C000-000000000046}"), 
      but I guess this should never be required.
    ; Don't ask me how I've wrote this code :)
  * harbour/contrib/hbwin/tests/pdfcreat.prg
    * changed to sync with new __AxRegisterHandler() behaviour
  * harbour/contrib/hbwin/tests/testole.prg
    + added new Internet Explorer test to show OLE callback events
2010-10-14 02:46:49 +00:00
Przemyslaw Czerpak
7f2ff9b35f 2010-09-13 17:00 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/hbwinole.h
  * harbour/contrib/hbwin/axcore.c
  * harbour/contrib/hbwin/olecore.c
  * harbour/contrib/hbwin/hbolesrv.c
    + added new 'HB_USHORT uiClass' parameter to hb_oleDispInvoke()
      C function and updated corresponding code.
2010-09-13 15:01:10 +00:00
Przemyslaw Czerpak
c42f87ca61 2010-07-01 02:31 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/compiler/harbour.y
  * harbour/src/compiler/harbour.yyh
  * harbour/src/compiler/harbour.yyc
    * increase the maximum bison stack size limit
      from 10000 items to 100000

  * harbour/src/rtl/gtsln/kbsln.c
    + added support for HB_K_RESIZE

  * harbour/contrib/hbwin/axcore.c
  * harbour/contrib/hbwin/hbolesrv.c
    * do not pass message ID (DISPID) as first parameter of codeblock
      or function taken from hash array indexed by DISPIDs.
      This modification restores old format, i.e. the one expected
      by GTWVG code.

  * harbour/contrib/hbwin/tests/olesrv1.prg
    ! comment
2010-07-01 00:31:49 +00:00
Viktor Szakats
81c9b0506c 2010-06-04 15:21 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/*
    * Deleted 'www.' from harbour-project.org website name.
      (www.harbour-project.org -> harbour-project.org)
2010-06-04 13:32:23 +00:00
Przemyslaw Czerpak
66b0a1b53f 2010-05-26 11:19 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/hbwinole.h
    ! fixed typo in added extern declarations

  * harbour/contrib/hbwin/hbwinole.h
  * harbour/contrib/hbwin/axcore.c
  * harbour/contrib/hbwin/olecore.c
  * harbour/contrib/hbwin/hbolesrv.c
    + added support for automatic conversion of HVM objects returned by
      Harbour OLE server methods to OLE objects.
      Please test. I cannot make any tests now.
    ; TODO: if it works then update this code to create some more general
            version.
2010-05-26 09:20:00 +00:00
Przemyslaw Czerpak
54b5e1564a 2010-05-20 19:49 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rdd/dbf1.c
    * minor cleanup

  * harbour/include/hbapi.h
    + added new macro HB_IS_EVALITEM() - returns true for items which can
      understand EVAL message i.e. CODEBLOCK and SYMBOL items.

  * harbour/contrib/hbwin/axcore.c
  * harbour/contrib/hbwin/olecore.c
  * harbour/contrib/hbwin/hbwinole.h
    * modified hb_oleDispInvoke() function to accept as additional
      parameter pointer to HVM item instead of pointer to DISPID.
      Such version is more universal.
2010-05-20 17:50:09 +00:00
Przemyslaw Czerpak
1b39f1e55c 2010-05-15 10:32 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/hbwinole.h
  * harbour/contrib/hbwin/olecore.c
    + added new C function hb_oleDispInvoke()

  * harbour/contrib/hbwin/axcore.c
    * use hb_oleDispInvoke() - please test if activex controls still work
      correctly
2010-05-15 08:32:36 +00:00
Przemyslaw Czerpak
40e7f5faf9 2010-03-18 14:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/axcore.c
    * use hb_parstr_u16() instead of hb_mbtowc(hb_parc(n))

  * harbour/src/rtl/hbzlib.c
    * modified HB_ZUNCOMPRESSLEN(), current syntax is:
         HB_ZUNCOMPRESSLEN( <cCompressedData>, [<@nResult>] )
               -> <nUnCompressedDataLen> or -1 on error

  * harbour/contrib/hbbzip2/hbbzip2.c
    * modified HB_BZ2_UNCOMPRESSLEN(), current syntax is:
         HB_BZ2_UNCOMPRESSLEN( <cCompressedData>, [<@nResult>] )
               -> <nUnCompressedDataLen> or -1 on error
2010-03-18 13:10:17 +00:00
Viktor Szakats
16242fc4b7 2010-03-13 03:03 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/gtwvt/gtwvt.c
    ! Reverted RegisterClassEx() to RegisterClass() for WinCE.
      Thanks for the information.

  * src/rtl/gtdos/gtdos.c
  * src/rtl/gtwvt/gtwvt.c
  * src/rtl/filesys.c
  * src/rdd/dbcmd.c
  * src/rdd/dbcmd53.c
  * src/rdd/wafunc.c
  * src/rdd/workarea.c
  * src/rdd/dbfcdx/dbfcdx1.c
  * src/rdd/dbffpt/dbffpt1.c
  * src/rdd/ordwldsk.c
  * src/rdd/hbsix/sxord.c
  * src/rdd/hbsix/sxsem.c
  * src/rdd/ordcount.c
  * contrib/hbtpathy/tpwin.c
  * contrib/rddbmcdx/bmdbfcdx.c
  * contrib/gtwvg/gtwvg.c
  * contrib/gtwvg/wvggui.c
  * contrib/gtwvg/wvgwing.c
  * contrib/rddads/adsfunc.c
  * contrib/hbwin/axcore.c
  * contrib/hbwin/mapi.c
  * contrib/hbwin/win_dlg.c
    * 'memset( &obj, 0, sizeof( TYPE_OF_OBJ ) )'
      changed to:
      'memset( &obj, 0, sizeof( obj ) )'
      (same meaning but less room for mistake)
    * Variable scope cleanups in few places.

  * bin/hb-mkimp.bat
  * src/vm/itemapi.c
    * Formatting.
2010-03-13 02:07:35 +00:00
Przemyslaw Czerpak
cdd7cd30db 2010-02-14 15:17 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbwince.h
    * redirect GetProcAddress() to GetProcAddressA() in WinCE builds.
      ASCII version of GetProcAddress() is supported by WinCE 3.0 and
      later versions.

  * harbour/include/hbdefs.h
    - removed HBTEXT() macro

  * harbour/src/common/hbver.c
  * harbour/src/rtl/diskspac.c
  * harbour/src/rtl/disksphb.c
  * harbour/src/rtl/gtwvt/gtwvt.c
  * harbour/src/vm/extrap.c
  * harbour/src/vm/maindllp/dllpcode.c
  * harbour/contrib/gtwvg/gtwvg.c
  * harbour/contrib/gtwvg/gtwvg.h
  * harbour/contrib/gtwvg/wvgwin.c
  * harbour/contrib/hbwin/wapi_winbase.c
  * harbour/contrib/hbwin/axcore.c
  * harbour/contrib/hbwin/mapi.c
  * harbour/contrib/hbwin/win_prn2.c
  * harbour/contrib/hbwin/win_prn3.c
  * harbour/contrib/hbwin/wapi_shellapi.c
    * eliminated HBTEXT() macro

  * harbour/src/rtl/diskspac.c
  * harbour/src/rtl/disksphb.c
  * harbour/contrib/hbwin/wapi_winbase.c
    % optimized GetProcAddress() calls to store function addresses
      in static variables
2010-02-14 14:18:13 +00:00
Viktor Szakats
b2ea757166 2010-02-08 19:03 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/gtwin/gtwin.c
    * ULONG -> HB_SIZE

  * src/rtl/gtwvt/gtwvt.c
    * LONG -> int
    * ULONG -> HB_SIZE

  * contrib/gtwvg/gtwvg.c
  * contrib/gtwvg/wvggui.c
    * LONG -> int
    * ULONG -> HB_SIZE

  * contrib/gtwvg/wvgwin.c
    * ULONG -> HB_ULONG
    * LONG -> long

  * contrib/gtwvg/wvgutils.c
  * contrib/gtwvg/wvgsink.c
  * contrib/gtwvg/wvgwing.c
  * contrib/hbwin/axcore.c
    * LONG -> long

  * contrib/gtwvg/wvgutils.c
    * "" -> NULL
2010-02-08 18:04:28 +00:00
Viktor Szakats
425ce2ea23 2010-02-07 11:49 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbwin/wapi_wingdi.c
  * contrib/hbwin/hbwin.ch
    + Added WAPI_EXTTEXTOUT()

  * contrib/hbwin/axcore.c
  * contrib/hbwin/olecore.c
    * USHORT -> HB_USHORT

  * contrib/hbwin/win_prn2.c
    * USHORT -> HB_SIZE plus some changes accordingly.

  * src/rtl/gtwin/gtwin.c
  * src/rtl/gtwvt/gtwvt.c
    * USHORT -> HB_WCHAR, HB_USHORT

  * contrib/gtwvg/gtwvg.c
  * contrib/gtwvg/wvggui.c
  * contrib/gtwvg/wvggui.h
  * contrib/gtwvg/wvgwin.c
  * contrib/gtwvg/wvgutils.c
  * contrib/gtwvg/wvgcore.c
  * contrib/gtwvg/wvgsink.c
  * contrib/gtwvg/wvgwing.c
    * USHORT -> HB_WCHAR, HB_USHORT, UINT, int

  * contrib/gtwvg/gtwvg.h
  * contrib/gtwvg/wvggui.h
    - Deleted unused structures (using USHORT).
2010-02-08 10:50:44 +00:00
Viktor Szakats
7903d5b170 2010-01-15 12:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/macro/macro.yyc
  * src/macro/macro.y
  * src/macro/macrolex.c
  * src/rtl/gtwvt/gtwvt.h
  * doc/en-EN/hb_apigt.txt
  * doc/en-EN/hb_api.txt
  * doc/en-EN/hb_vm.txt
  * doc/en-EN/hb_apiln.txt
  * doc/en-EN/hb_macro.txt
  * doc/en-EN/hb_apiit.txt
  * doc/en-EN/hb_apifs.txt
  * doc/codestyl.txt
  * include/hbthread.h
  * include/hbxvm.h
  * include/hbdefs.h
  * include/hbvm.h
  * include/hbcomp.h
  * include/hbcompdf.h
  * include/hbwmain.c
  * include/hbexpra.c
  * include/hbfloat.h
  * include/hbapicls.h
  * include/hbexprb.c
  * contrib/hbtpathy/tpos2.c
  * contrib/hbtpathy/tpunix.c
  * contrib/hbnf/prtscr.c
  * contrib/hbnf/proper.c
  * contrib/hbnf/fttext.c
  * contrib/hbnf/dispc.c
  * contrib/hbnf/ontick.c
  * contrib/hbnf/poke.c
  * contrib/hbpgsql/postgres.c
  * contrib/rddads/rddads.h
  * contrib/hbmisc/strfmt.c
  * contrib/hbmisc/ffind.c
  * contrib/hbwin/wapi_winbase.c
  * contrib/hbwin/axcore.c
  * contrib/hbwin/win_dll.c
  * examples/hbdoc/examples/core_es/hb_vm.txt
  * examples/hbdoc/examples/core_es/hb_apiln.txt
  * examples/rddado/adordd.prg
    * BOOL  -> HB_BOOL
    * TRUE  -> HB_TRUE
    * FALSE -> HB_FALSE
      ; Final touches after verification of whole codebase.
        GTWVG still needs changes.
    ! Fixed FT_FBOF() returning random value after FT_USE().
    ! Fixed some bool values stored in int types.
2010-01-15 11:06:44 +00:00
Viktor Szakats
198c6b2804 2009-12-14 14:21 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbwin/win_os.prg
  * contrib/hbwin/wapi_winuser.c
  * contrib/hbwin/axcore.c
  * contrib/hbwin/wapi_commctrl.c
    * Formatting.
2009-12-14 13:22:25 +00:00
Viktor Szakats
01fadd92e8 2009-12-09 16:33 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/hbqt_slots.cpp
    % Eliminated two variables.

  * contrib/hbwin/oleinit.c
  * contrib/hbwin/win_misc.c
  * contrib/hbwin/wapi_winuser.c
  * contrib/hbwin/axcore.c
  * contrib/hbwin/olecore.c
  * contrib/hbwin/win_com.c
  * contrib/hbwin/wapi_commctrl.c
    * Using HB_TRUE / HB_FALSE consistenly everywhere.
2009-12-09 15:35:07 +00:00
Mindaugas Kavaliauskas
1334d9c9df 2009-12-01 16:39 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/contrib/hbwin/olecore.c
  * harbour/contrib/hbwin/axcore.c
    * changed error system name from OLE to WINOLE
    * renumerated error subcodes starting from 1001
2009-12-01 14:42:57 +00:00
Przemyslaw Czerpak
449d3de17d 2009-12-01 01:19 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbwince.h
  * harbour/contrib/hbwin/axcore.c
    * moved HBTEXT macro definition from axcore.c to hbwince.h

  * harbour/contrib/hbwin/wapi_shellapi.c
    ! use HBTEXT() macro for literal constants used as second parameter
      of GetProcAddress(). It fixes WINCE builds where whole API uses
      only UNICODE strings.
2009-12-01 00:19:27 +00:00
Przemyslaw Czerpak
25568e13e8 2009-11-28 18:53 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/axcore.c
    ! added missing Release() call for OLE object
2009-11-28 17:54:07 +00:00
Przemyslaw Czerpak
e881381b1e 2009-11-28 13:02 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/vm/fm.c
    ! fixed typo - thanks to Bill for info

  * harbour/contrib/hbwin/axcore.c
    * minor cleanup

  * harbour/contrib/hbwin/olecore.c
    + added support for VT_UNKNOWN variants translated to Harbour
      OLE objects (WIN_OLEAUTO) - please test
2009-11-28 12:03:21 +00:00
Mindaugas Kavaliauskas
626faad80c 2009-11-26 02:25 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/contrib/hbwin/axcore.c
  * harbour/contrib/hbwin/olecore.c
    * added OLE error code as OS code. Changed subsystem from BASE to OLE
    ; NOTE: function hb_errRT_OLE() is static and defined in both modules.
      I'm not sure about the future parameters of the function, so, 
      I do not want to make it public.

  * harbour/contrib/hbwin/legacycd.c
  * harbour/contrib/hbwin/legacyco.c
    * moved code inside #ifndef HB_WIN_LEGACY_LEVEL_OFF
2009-11-26 00:26:16 +00:00
Viktor Szakats
e2e3b952b3 2009-11-23 01:04 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbwin/axcore.c
  * contrib/hbwin/oleinit.c
  * contrib/hbwin/wapi_winbase.c
  * contrib/hbwin/win_misc.c
  * contrib/hbwin/hbwinole.h
  * contrib/hbwin/olecore.c
  * contrib/hbwin/win_dll.c
    * BOOL -> HB_BOOL (where applicable)
    * ULONG, unsigned long -> HB_SIZE (where applicable)

  * contrib/hbwin/wce_smsc.c
    % Optimized out BOOL var.

  * contrib/hbwin/win_dll.c
    * ULONG -> unsigned long

  * contrib/hbwin/win_prn1.c
  * contrib/hbwin/win_regc.c
  * contrib/hbwin/win_osc.c
  * contrib/hbwin/win_dll.c
    ! Formatting.
2009-11-23 00:05:57 +00:00
Przemyslaw Czerpak
f7f2caa607 2009-10-30 03:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/common/hbgete.c
  * harbour/src/common/hbffind.c
  * harbour/src/common/hbfsapi.c
  * harbour/src/rtl/fstemp.c
  * harbour/src/rtl/filesys.c
  * harbour/src/rtl/diskspac.c
  * harbour/src/rtl/disksphb.c
  * harbour/src/rtl/net.c
    ! fixed memory leak reported by Pritpal
    * cleanup some UNICODE conversions in Windows builds (mostly resolved
      some macros when UNICODE macro is also explicitly used and cleaned
      some buffers length passed to windows functions.
    * removed unnecessary casting - if it's not necessary for some strange
      reasons never cast strings to LP[C][TW]STR calling windows functions.
      Such casting does not make any conversions but only hides potential
      bugs.

  * harbour/contrib/hbwin/axcore.c
    * pacified warning
2009-10-30 02:41:17 +00:00
Viktor Szakats
a0e07d3940 2009-10-27 17:36 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbwin/axcore.c
    * Replaced duplicated constant with HB_SIZEOFARRAY() macro.

  * utils/hbmk2/hbmk2.prg
    + C compiler autodetection will now make sure to skip compilers 
      where required Harbour core libraries aren't installed.
      This autodetection is disabled when HB_LIB_INSTALL is set 
      manually and also when lib/<plat> dir is missing altogether, 
      assuming there is a single-compiler installation used in this 
      case (where such autodetection cannot work reliably).
      When using -info option, a screen message is shown if 
      autodetected C compiler is skipped for above reason.
2009-10-27 16:39:24 +00:00
Przemyslaw Czerpak
abb4092d09 2009-10-27 10:34 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/src/vm/garbage.c
    * added emulation for hb_gcAlloc() function covered by HB_LEGACY_LEVEL2
      It will be removed in the future but now it gives a time for 3-rd party
      code developers to updated existing code and switch to hb_gcAllocate()

  * harbour/contrib/hbwin/hbwinole.h
  * harbour/contrib/hbwin/olecore.c
    + added hb_oleItemGetCallBack() and hb_oleItemSetCallBack()
      functions and support for user defined items bound with
      OLE GC pointer item

  * harbour/contrib/hbwin/axcore.c
    * bound callback function with OLE item so it will be automatically
      released with OLE object

  * harbour/contrib/hbwin/tests/testax.prg
     ! destroy window
     * enabled destructor

    So far MS-Windows users haven't defined expected behavior for OLE code
    so I took my own arbitrary decision and bound callback with OLE GC item.
    When last copy of this item is cleared then callback is unregistered
    and freed. It means that it can happen before AX window is closed.
    If you prefer different behavior then please clearly define what
    you need and I can try to change existing code.
    Now testax.prg should cleanly execute without any GPF traps and
    resource leaks.
2009-10-27 09:34:35 +00:00
Przemyslaw Czerpak
70f4989f31 2009-10-23 18:07 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/axcore.c
    ! fixed wrongly initialized reference counter in AX control.
      Now when AX Window is closed and all .prg references to OLE
      are cleared pSink is released.
2009-10-23 16:08:06 +00:00
Przemyslaw Czerpak
a70ce60954 2009-10-23 09:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rdd/dbfnsx/dbfnsx1.c
    ! fixed bug reported by Jaroslav Janik (many thanks) - if index FOR
      expression excluded all records from non empty table then root page
      was not initialized and DBFNSX generated corruption RTE.

  * harbour/utils/hbi18n/hbi18n.prg
    * set default GT to CGI

  * harbour/src/common/hbgete.c
    ! fixed memory leak in non UNICODE Windows hb_getenv_buffer()
    ! add C stack buffers to eliminate memory allocation in UNICODE
      Windows hb_getenv_buffer() - they are used if envvar name and
      passed buffer are not too large. It fixes HB_FM_STATISTICS
      Windows builds.

  * harbour/contrib/hbwin/wapi_winuser.c
    + added WAPI_DESTROYWINDOW function

  * harbour/contrib/xhb/traceprg.prg
  * harbour/contrib/xhb/hbcompat.ch
    ! fixed typo in TraceLog() condition - was always disabled
    + added emulation for xHarbour Set( _SET_TRACE* [, <params,...> ] )
      settings

  * harbour/src/vm/hvmall.c
    ! define _GNU_SOURCE to fix compilation with HB_FM_DL_ALLOC in Linux
      builds

  * harbour/include/hbdefs.h
    * declare HB_FOFFSET as LONG instead of LONGLONG on platforms where
      LONG is 64bit integer to be compatible with C RTL file API

  * harbour/src/vm/maindllh.c
  * harbour/src/vm/maindllp.c
  * harbour/contrib/hbct/ctstr.c
    ! casting in HB_TRACE() massages

  * harbour/include/hbapi.h
  * harbour/include/hbapiitm.h
  * harbour/src/vm/arrays.c
  * harbour/src/vm/hashes.c
  * harbour/src/vm/itemapi.c
    + added hb_arrayCloneTo(), hb_hashCloneTo(), hb_itemCloneTo()

  * harbour/src/vm/arrayshb.c
  * harbour/src/vm/classes.c
  * harbour/src/vm/hashes.c
  * harbour/src/vm/hashfunc.c
  * harbour/src/vm/hvm.c
    % use hb_*CloneTo() instead of hb_*Clone()

  * harbour/include/hbapi.h
  * harbour/src/vm/garbage.c
    - removed hb_gcRegisterSweep() function and support for user defined
      sweep mark functions in GC blocks
    - removed hb_gcAlloc() function
    + added new function hb_gcAllocate() which work in similar way to removed
      hb_gcAlloc() function but it accepts as second parameter HB_GC_FUNCS
      structure instead of HB_GARBAGE_FUNC_PTR and returned GC blocks are
      locked so programmer does not have to worry that they can be removed
      by GC.
    + added new internal function hb_gcAllocRaw() which works like
      hb_gcAllocate() but returned GC blocks are not locked. They can
      be used only in HVM in places well known that cannot activate
      automatic GC scan. It should not be used by 3-rd party code.

  * harbour/include/hbapi.h
  * harbour/include/hbapiitm.h
  * harbour/src/vm/extend.c
  * harbour/src/vm/itemapi.c
    * modified hb_parptrGC(), hb_parvptrGC(), hb_arrayGetPtrGC(),
      hb_itemGetPtrGC() functions to use HB_GC_FUNCS structure instead
      of HB_GARBAGE_FUNC_PTR
    * modified hb_itemPutPtrGC() and indirectly related functions like
      hb_arraySetPtrGC() or hb_stor[v]ptrGC() to automatically unlock
      passed GC block just after attaching to known HVM item.

  * harbour/include/hbregex.h
  * harbour/src/rtl/hbregexc.c
    * declare GC block detractor as static function
    + added hb_regexIs() function
    * updated to work with new GC API
    * removed unnecessary in new GC API hb_gcLock() call - GC blocks
      allocated by hb_gcAllocate() are already locked and they mustn't
      be locked explicitly by programmer (until he does not exactly knows
      what he does ;))

  * harbour/src/rtl/hbregex.c
    * use hb_regexIs() instead of using regex GC destructor
    * removed unnecessary in new GC API hb_gcUnlock() call - GC blocks
      stored in HB_IT_POINTER item are automatically unlocked

  * harbour/src/rtl/hbinet.c
  * harbour/contrib/hbcurl/hbcurl.c
    * updated to work with new GC API
    % unlock items storing callback codeblocks and use GC mark functions
      to mark them as used in GC passes

  * harbour/src/pp/pplib.c
  * harbour/src/vm/runner.c
  * harbour/src/vm/codebloc.c
  * harbour/src/vm/hashes.c
  * harbour/src/vm/hvm.c
  * harbour/src/vm/arrays.c
  * harbour/src/vm/thread.c
  * harbour/src/vm/dynlibhb.c
  * harbour/src/rtl/hbzlibgz.c
  * harbour/src/rtl/hbregex.c
  * harbour/src/rtl/hbregexc.c
  * harbour/src/rtl/hbgtcore.c
  * harbour/src/rtl/hbi18n1.c
  * harbour/src/rdd/wacore.c
  * harbour/contrib/hbsqlit3/hbsqlit3.c
  * harbour/contrib/hbnetio/netiosrv.c
  * harbour/contrib/hbmzip/hbmzip.c
  * harbour/contrib/hbhpdf/harupdf.c
  * harbour/contrib/hbwin/olecore.c
  * harbour/contrib/hbwin/win_prn1.c
  * harbour/contrib/hbwin/win_dll.c
    * updated code which was using hb_gcAlloc() to work with new GC API.

  * harbour/contrib/hbwin/axcore.c
    * updated syntax description

   TODO: update contrib code: hbqt, hbssl, ... to work with new GC API.
         I would like to ask authors of above libraries to do it.
   TODO: defined when and how we should free AX control and user callback
         handler and update AX code to respect new definition
2009-10-23 07:25:36 +00:00
Przemyslaw Czerpak
0f44b9d437 2009-09-03 23:54 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/axcore.c
    ! removed the hack I added in previous commit with interface enumeration
      which was accepting any interface without validation its ID.
    + added 3-rd parameter to __AXREGISTERHANDLER() as Mindaugas proposed.
      Now this function has the following syntax:
         __AXREGISTERHANDLER( <pDisp>, <bHandler> | <hHandlers>
                              [, <cIID> ] ) -> <pDisp>
      default value for <cIID> is IID_IDispatch.
2009-09-03 21:55:01 +00:00
Przemyslaw Czerpak
c1990f823e 2009-09-03 08:25 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/axcore.c
    + added alternative method to look for connection point if
      FindConnectionPoint() method fails when new AX control is created.
      Such method is used by HWGUI and GTWVG.
      Mindaugas please verify it, windows users please test it.
2009-09-03 06:26:02 +00:00
Przemyslaw Czerpak
88f8eeb94b 2009-08-23 11:58 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/axcore.c
    * added automatic activex initialization to __AXDOVERB().
      __AXGETCONTROL()/hb_oleAxControlNew() also make automatic
      initialization so it's not necessary to explicitly call
      WIN_AXINIT()/hb_oleAxInit()

  * harbour/contrib/rddads/readme.txt
    ! updated ADS* RDD usage description which contain very old information
      which stop to be valid many years ago, i.e. user code should not call
      rddRegister().

  * harbour/contrib/rddads/rddads.h
  * harbour/contrib/rddads/ads1.c
    ! fixed SELF_RESETREL() macro
    ! changed uiRecordLen to ulRecordLen - ADT tables can have records
      longer then 64KB
    ! fixed size of alias buffer passed to AdsGetTableAlias()

  * harbour/contrib/rddads/adsx.c
    * modified ADSXAREA structure definition to directly inherit from
      ADSAREA instead of manual redefining all of its fields.
2009-08-23 09:58:39 +00:00
Viktor Szakats
986e46f7eb 2009-08-22 08:13 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbwin/axcore.c
    + My previous change reapplied after it has been overwritten/lost
      by previous commit.
      Pritpal, pls verify your workflow, this was a very small change
      but it's just out of luck I noticed it has been undone and it
      could be something important in another case. Please 'svn update'
      before committing and edit files directly in your sandbox. I'm
      writing this because such lost committed modification happened 
      already a few times in the past. Thank you.

  * config/global.mk
    + Including optional config/conf.mk file.
      Such file may be created by configure session.
2009-08-22 06:15:07 +00:00
Pritpal Bedi
669e61e780 2009-08-21 19:19 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/gtwvg/wvgax.prg
  * contrib/gtwvg/wvgsink.c
    ! Code parts used fron axcore.c, deleted from these files.

  * contrib/hbwin/axcore.c
    + __AXDOVERB(), a very important function for in-process active-x controls
2009-08-22 02:29:05 +00:00
Viktor Szakats
64e24f559d 2009-08-22 03:10 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/common/watcom.mk
  * config/win/bcc.mk
    % Yet another experiment, maybe it won't have any bad side
      effects: For compilers where $(AR) command supports differential
               command (bcc and watcom), we're only passing the list
               of changed objects instead of all of them. Should be
               much more efficient for incremental builds.

  * config/globsh.mk
  * config/instsh.mk
    ! Reset nt shell dirbase and clean rules to previous state
      (using 'if [not] exist' instead of $(wildcard)).
      New solution had several side effects. Some of them easy
      understandable, some others outright mysterious, so more
      research will be needed here. Some experiences:
      - the whole rule is evaluated before starting to execute the resulting commands.
      - multiple rules with the same target are merged before evaluating them
      - $(wildcard) is tricky with dirs, especially ones with spaces
      - if we use conditional lines ($if()) and all lines are ruled out,
      -     the rule will become empty, igniting a confusing GNU Make message.
      - strange behavior when using 'CLEAN INSTALL'
      - $(RM) stayed at default value in one /source/pp/Makefile rule.
    ; TOFIX: dos/os2 rules are still slightly wrong because of similar problems,
             and there 'if [not] exist' isn't a working option either, so
             we will need to think about something, like splitting clean
             rules to two levels internally, or more make function tricks.

  * config/readme.txt
  + config/os2-make.exe
  * INSTALL
    + Added os2 GNU Make binary (3.81 static build). Just to be in
      sync with other non-*nix platforms. Maybe it will be removed or
      renamed.

  * config/globsh.mk
    + Minor wording change.

  * contrib/hbwin/axcore.c
    * Very minor formatting.

  - make_gnu_xmingw.sh
  - make_gnu_xmingwce.sh
    % Deleted two cross-build starter scripts. Their functionality
      has been largely moved into our GNU Make system.
      Please use these commands for equivalent functionality:
         [g]make HB_ARCHITECTURE=[win|wce]
    ; NOTE: Comments are still welcome regarding experiences
            especially from original authors of these scripts.
            Maybe I missed something. $(TARGET) var support.
            Please comment.
2009-08-22 01:13:51 +00:00
Przemyslaw Czerpak
d27e95d5d8 2009-08-21 19:07 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/axcore.c
    * do not pass event number as 1-st parameter to user handlers
      taken from array indexed by event numbers - it's not necessary
      to repeat it.
    * updated RT error handlers

  * harbour/config/global.mk
    * extended MS-DOS detection
2009-08-21 17:08:06 +00:00
Przemyslaw Czerpak
4077cbb993 2009-08-21 13:34 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/bin/hb-func.sh
    ! do not strip system libraries in windows shared linking - unused
      ones are not attached to harbour*.dll

  * harbour/contrib/hbwin/hbwinole.h
  * harbour/contrib/hbwin/olecore.c
    + added support to pass strings with embedded chr(0) characters
    + added new public C function:
         IDispatch* hb_oleItemGet( PHB_ITEM pItem );
      it extracts IDispatch* pointer from Harbour OLE pointer item.
    + added new public C function:
         void       hb_oleVariantUpdate( VARIANT* pVariant, PHB_ITEM pItem );
      it updates pVariant structure using values from given pointer item
      (used to update parameter passed by reference to activex event handler)
    % optimized some code

  * harbour/contrib/hbwin/hbwinole.h
  * harbour/contrib/hbwin/axcore.c
    + added new public C function:
         BOOL       hb_oleAxInit( void );
    + added new public C function:
         PHB_ITEM hb_oleAxControlNew( PHB_ITEM pItem, HWND hWnd );
      It's C function with the same functionality as __AXGETCONTROL()
    ! allocate ISink structure using hb_xgrab() not hb_gcAlloc()
    ! initialize ISink reference counter to 0
    ! fixed Release() method to free all allocated resources when
      reference counter reach 0
    * return new Active-X control as Harbour OLE item pointer.
      Warning !!! hb_parptr() and hb_itemGetPtr() do not return valid
      pointer for controls created by hb_oleAxControlNew()/__AXGETCONTROL()
      Use hb_oleItemGet() and hb_oleParam() to extract pointer to IDispatch
      Please update existing code which used __AXGETCONTROL() pointers
      at C level.
    - removed not longer used hb_sink_destructor
    ! removed WIN_AXRELEASEOBJECT() - this function breaks reference counters
      used by OLE object which needs strict updating to avoid memory leaks
      (not freed OLE object) or GPF traps (accessing freed object)
    + extended Invoke() method to update OLE parameters passed by reference.
    + accept as event handler hash arrays indexed by event numbers and
      values with codeblocks or function pointers. Similar functionality
      exists in HWGUI when it's compiled with __USEHASHEVENTS macro and
      it's much better then passing two arrays.
    % optimized some code

    Please test above Active-X modifications. I'm not MS-Windows user so
    they have to be verified by real MS-Windows developers.
    They should fix problems with memory leaks (OLE objects where never
    freed) or GPF traps in C code which tired to strictly manage reference
    counters.
    To C programmers: if you increase reference counter to activex control
    (AddRef()) then you have to release it (Release()) or activex control
    will never be freed even after clearing all .prg references. It's
    released only when last reference owner calls Release() method so now
    valid code can keep references to IDispatch at C level without any
    problem but it also means that this code can exploit problems in
    existing wrong code.
2009-08-21 11:35:11 +00:00
Mindaugas Kavaliauskas
102d43358c 2009-06-17 00:05 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/contrib/hbwin/axcore.c
    ! fixed GPF on ActiveX application exit caused by invalid 
      AtlAxWinTerm() call.
    ; It's inline function and it does not exists in atl.dll
    ; MSDN says:
      When Do I Need to Call AtlAxWinTerm?

      AtlAxWinTerm unregisters the "AtlAxWin7" window class. You should 
      call this function... If don't call this function, the window class 
      will be unregistered automatically when the process terminates.
    ; Thanks Toninho for self contained 3 lines GPF sample without 
      FWH, gtwvg, etc!
2009-06-16 21:10:31 +00:00
Viktor Szakats
1ea8b84235 2009-05-30 01:12 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
    * Minor update.

  * contrib/hbwin/axcore.c
    ! Fixed mingw64 warning.

  * examples/uhttpd/uhttpd.prg
    * Applied fix sent by Vailton to the list.
2009-05-29 23:12:49 +00:00
Viktor Szakats
ed98bd576a 2009-05-27 12:59 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    % -undef/-D Harbour options will be reduced in cross-compilation
      scenarios. If a __PLATFORM__* value appears as both -undef and
      -D it will be omitted. This results in smaller command line,
      plus works around this warning:
      'Warning W0001  Redefinition or duplicate definition of #define __PLATFORM__WINDOWS'
      when using the embedded compiler (doesn't seem to happen with
      external compiler).
    + Added autodetection for mingw64 and mingwarm compilers. It should
      now be enough to use -arch=wce on the command line to initiate a
      WinCE cross-build if the compiler is setup in the path or using
      the embedded installation. So it's recommended to use -arch=wce
      instead of -arch=mingwarm from now on. For mingw64 builds, no
      extra switch is needed, if in the PATH, it will be autodetected.
    ! Added Harbour command to Harbour command line shown in case of
      error.

  * contrib/gtwvg/wvgcuig.c
    ! Fixed one GCC warning. I'm not sure if this is a correct one,
      my only goal was to make the warning disappear and to define
      a previously undefined case.
    ; TOFIX: This warning still remains, and indicates unsafe code:
             wvgsink.c:516: warning: dereferencing pointer 'hSink.33' does break strict-aliasing rules

  * contrib/gtwvg/tests/demoxbp.prg
  * contrib/gtwvg/tests/demowvg.prg
    ! Fixed hard-wired paths, so that now some more samples
      work regardless of Harbour installation dir.
    ; NOTE: Never use hard-wired absolute paths inside any Harbour
            component. We now have hb_DirBase(), please make use of it.
    ; NOTE: For me most of the samples still don't work, AX toolbar icons
            don't appear, and most of the AX samples fail with an unclosable 
            window.

  * contrib/hbwin/axcore.c
  * contrib/gtwvg/wvgsink.c
    * Moved recently added extra AX functions to GTWVG.
    * Kept optimized, hbwin version of HB_AX_ATLCREATEWINDOW().
    * Others renamed and commented:
      WIN_AXGETUNKNOWN() -> WVG_AXGETUNKNOWN()
      WIN_AXSETVERB      -> WVG_AXDOVERB()
    ! HB_AX_ATLSETVERB() now accepts HWND pointers, too.
    ! HB_AX_ATLAXGETCONTROL() now accepts HWND pointers, too.
    ; TOFIX: GTWVG uses HB_AX_* prefix to denote AX function, while
             these should be named WVG_AX*().
    ; TODO: Probably the full content, or at least the universally
            useful portion of wvgsink.c should eventually go to hbwin,
            but all these functions need further cleanups,
            and they also have to be renamed. I don't know what we
            should stay compatible with so it's difficult to make
            any moves. Some test code showing the usefulness of
            these function would be probably help.
2009-05-27 11:15:06 +00:00
Viktor Szakats
f75fe3e4c7 2009-05-26 20:05 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
     * Minor cleanups to prev.

   * contrib/hbwin/axcore.c
     * Minor formatting.
     % Variable scopes adjusted.
     % WIN_AXCREATEWINDOW() optimized.
     - Deleted ToOutDebug() stuff. Please use TRACE() subsystem for
       these parts.
     ; NOTE: I'm note sure we should have a WIN_AXCREATEWINDOW() function
             there. Rather, we should have a WAPI_CREATEWINDOWEX() function
             which serves the same purpose, but in a generic manner, also
             usable for AX purposes. Is there anything against this idea?

   * utils/hbformat/hbformat.prg
   * contrib/gtwvg/wvgclass.prg
   * contrib/gtwvg/wvgscrlb.prg
   * contrib/gtwvg/wvgdlg.prg
   * contrib/gtwvg/wvgpaint.prg
   * contrib/gtwvg/wvgdarea.prg
   * contrib/gtwvg/wvgmle.prg
   * contrib/gtwvg/wvglistb.prg
   * contrib/gtwvg/wvgtoolb.prg
   * contrib/gtwvg/wvgpushb.prg
   * contrib/gtwvg/wvgsle.prg
   * contrib/gtwvg/wvgtreev.prg
   * contrib/gtwvg/tests/demoxbp.prg
   * contrib/gtwvg/tests/demowvg.prg
   * contrib/gtwvg/wvgwnd.prg
   * contrib/gtwvg/wvgcrt.prg
   * contrib/gtwvg/wvgdatar.prg
   * contrib/gtwvg/wvgradio.prg
   * contrib/gtwvg/wvgsysw.prg
   * contrib/gtwvg/wvgmenub.prg
   * contrib/gtwvg/wvgphdlr.prg
   * contrib/gtwvg/wvgbitmp.prg
   * contrib/gtwvg/wvgcheck.prg
   * contrib/gtwvg/wvgstatb.prg
   * contrib/gtwvg/wvgstatc.prg
   * contrib/gtwvg/wvghtmlv.prg
   * contrib/gtwvg/wincback.prg
   * contrib/gtwvg/wvgtabpg.prg
   * contrib/gtwvg/wvg3stat.prg
   * contrib/gtwvg/wvgcombo.prg
     * Some formatting. (' -> " and #include lines)
2009-05-26 18:06:55 +00:00
Pritpal Bedi
2b47ad6f09 2009-05-26 07:50 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbwin/axcore.c
    + __XAXREGISTERHANDLER()
      An extension of __AXREGISTERHANDLER() where connection points are 
      enumerated instead of finding - many OLE's have more than one interface -
      a practical discovery. Mindaugas please check if it can be the default.

    + WIN_AXATLGETCONTROL() - Normalizing PRG calling convension.
    + WIN_AXCREATEWINDOW()  - Can be dropped later.
    + WIN_AXGETUNKNOWN()    - Useful in many situations.
    + WIN_AXSETVERB()       - ---^---
    + WIN_AXRELEASEOBJECT() - Experimental
      Note that these function are primarily aimed at making experiments
      via gtwvg/winsink.c interface and after testings can be moved or removed.

      /*  Mindaugas, I receive a GPF when terminating the appln.
          Also I cannot see that ISink is ever subject to garbase collection.
          And "count" never returns to 0. I must be missing something, but...
      */
2009-05-26 15:03:05 +00:00