Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Commits on Jan 23, 2023

  1. 2023-01-23 12:46 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * include/harbour.hbx
        ! added missing hb_socketSetNoSigPipe()
    
      * src/rdd/dbfcdx/dbfcdx1.c
        * redirect all debug output to stderr
        * reenabled light debug code for early detection of index corruption
    druzus committed Jan 23, 2023
  2. 2023-01-23 12:28 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * contrib/gtqtc/gtqtc.h
      * contrib/gtqtc/gtqtc1.cpp
        * replaced depreciated in 5.15 methods for mouse wheel events processing
          by modern ones
        * replaced depreciated in 5.15 methods for accessing screen geometry by
          modern ones
    
      * contrib/gtqtc/gtqtc1.cpp
        + added support for TAB key processing when other widgets are shown and
          TAB is use to switch focus
    
      * src/rtl/alert.prg
      * src/rtl/hbgtcore.c
        + added support for hb_Alert() parameters passed in hash array, i.e.
             hb_Alert( { "TXT" => <cMessage>, ;
                         "BTN" => <aButtons>, ;
                       [ "TIM" => <nTimeOut> ] } ) => <nButton>
    
      * contrib/gtqtc/gtqtc.h
      * contrib/gtqtc/gtqtc1.cpp
      * include/hbgtinfo.ch
        + added new hb_gtInfo() action: HB_GTI_MSGBOX
          It opens QMessageBox with given by user text and buttons, i.e.
             hb_gtInfo( HB_GTI_MSGBOX, <cMessage>, <aButtons> ) => <nButton>
          or:
             hb_gtInfo( HB_GTI_MSGBOX, ;
                        { "TXT" => <cMessage>, ;
                          "BTN" => <aButtons>, ;
                        [ "TIM" => <nTimeOut>, ] ;
                        [ "TIT" => <cTitle>, ] ;
                        [ "INF" => <cInfoText>, ] ;
                        [ "DTL" => <cDetailedText> ] } ) => <nButton>
        + added support for redirecting Alert() and hb_Alert() calls to QT GUI
          QMessageBox(). This functionality can be enabled by:
             hb_gtInfo( HB_GTI_MSGBOX, .t. )
          and then
             Alert( <cMessage>, <aButtons> )
          is redirected to QT GUI QMessageBox().
    
      * include/hbgtinfo.ch
      * contrib/gtqtc/gtqtc.h
      * contrib/gtqtc/gtqtc.hbc
      * contrib/gtqtc/gtqtc.hbp
      * contrib/gtqtc/gtqtc1.cpp
        + added new hb_gtInfo() action: HB_QT_SOUND
          It allows to play sound using the low level GUI library, i.e.
             hb_gtInfo( HB_QT_SOUND, <cSoundFile> )
          This modification needs additional QT5 library Qt5Multimedia so I decided
          to enable it conditionally by HB_QT_SOUND=yes environment variable.
    druzus committed Jan 23, 2023

Commits on Jan 17, 2023

  1. Merge pull request #296 from lailton/master

    functions: Harbour socket API - HB_SOCKETSETNOSIGPIPE
    mlacecilia committed Jan 17, 2023
  2. 2023-01-17 13:10 UTC-0300 Lailton Fernando Mariano (lailton/at/paysof…

    …t.com.br)
    
      * include/hbsocket.h
      * src/harbour.def
      * src/rtl/hbsocket.c
      * src/rtl/hbsockhb.c
        + added functions: Harbour socket API
          HB_SOCKETSETNOSIGPIPE( hSocket, lValue ) --> lSuccess
    lailton committed Jan 17, 2023
  3. Merge pull request #295 from lailton/master

    updated system include path for new Linux distributions
    mlacecilia committed Jan 17, 2023
  4. 2023-01-17 13:00 UTC-0300 Lailton Fernando Mariano (lailton/at/paysof…

    …t.com.br)
    
      * contrib/hbcurl/hbcurl.hbm
      * contrib/hbssl/hbssl.hbm
        * updated system include path for new Linux distributions
    lailton committed Jan 17, 2023
  5. Merge pull request #294 from lailton/master

    disabled debug code HB_CDX_DBGCODE
    mlacecilia committed Jan 17, 2023
  6. 2023-01-17 12:54 UTC-0300 Lailton Fernando Mariano (lailton/at/paysof…

    …t.com.br)
    
      * src/rdd/dbfcdx/dbfcdx1.c
        ! disabled debug code HB_CDX_DBGCODE
    lailton committed Jan 17, 2023

Commits on Jan 16, 2023

  1. 2023-01-16 14:35 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * contrib/hbwin/wapi_shellapi.c
        ! replaced struct = { 0 } with memset( &struct, 0, sizeof( struct ) )
          Such BCC syntax does not clear the whole structure body in most of
          other C compilers.
    
      * src/pp/hbpp.c
        ! fixed compilation for compilers using "i64" to format long long numbers,
          thanks to Toninho for the information.
    druzus committed Jan 16, 2023

Commits on Jan 15, 2023

  1. 2023-01-15 11:17 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * contrib/hbwin/win_prn1.c
        ! fixed parameter type in font enum callback
    
      * include/harbour.hbx
      * src/harbour.def
      * src/rtl/hbgtcore.c
        + added two new PRG functions:
             hb_gtExists( <cGtName> ) -> <lExists>
             hb_gtList() -> <aGtNames>
    
      * src/rtl/hbgtcore.c
        * changed the order of defualt GT initialization. Now GT specified by -gt*
          hbmk2 option has higher priority then GT chosen by
             request HB_GT_<name>_DEFAULT
    
      * include/hbapi.h
      * src/vm/set.c
        + added two C functions for OS codepage translations:
             char * hb_osStrEncode2( const char * pszName,
                                     char * pszBuffer, HB_SIZE nSize );
             HB_WCHAR * hb_osStrU16Encode2( const char * pszName,
                                            HB_WCHAR * pszBufferW, HB_SIZE nSize );
    
      * include/hbwinuni.h
        + added HB_CHARDUP2() macro for UNICODE/ANSI OS codepage translation
    
      * src/common/hbgete.c
        ! fixed memory allocation in MS-Windows version of hb_getenv_buffer()
    
      * src/pp/hbpp.c
        ! added integer range to HB_VER_REVID definition to pacify warning
    
      * src/rtl/cdpapi.c
        * minor simplification
    druzus committed Jan 15, 2023

Commits on Nov 25, 2022

  1. 2022-11-25 18:14 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * include/hbapi.h
      * src/vm/cmdarg.c
        ! changed returned type in hb_verSvnID() form int to HB_MAXINT
    
      * src/nortl/nortl.c
        ! fixed void* pointer incrementation
        ! pacified warnings
    
      * src/rdd/dbcmd.c
        * accept NIL value in hb_FieldPut() according to Aleksander recommendation
    druzus committed Nov 25, 2022

Commits on Nov 11, 2022

  1. 2022-11-11 21:15 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * contrib/hbcurl/core.c
        ! use hb_vmPushString() instead of hb_vmPushStringPcode()
          hb_vmPushStringPcode() is only for static buffer which cannot be freed.
          Variables passed to PRG debug functions can be stored by PRG code in
          other variables which lives longer then passed buffer and later cause
          GPF when curls structure is freed.
        ! indenting
    druzus committed Nov 11, 2022
  2. 2022-11-11 20:47 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * include/hbapi.h
      * src/common/hbver.c
      * src/main/harbour.c
      * src/pp/hbpp.c
      * src/rtl/version.c
      * src/vm/cmdarg.c
        ! fixed integer overflow in revision number calculated from
          the last ChangeLog entry date
    druzus committed Nov 11, 2022

Commits on Nov 7, 2022

  1. 2022-11-07 09:24 UTC+0100 Aleksander Czajczynski (hb fki.pl)

      * contrib/hbcurl/core.c
        ! CURLOPT_MAXLIFETIME_CONN is available in curl 7.80.0,
          fix older builds by adding a version check
    
      * ChangeLog.txt
        * entry for previous merge was "old" (i wouldn't touch
          it alone), but it also had paths with backslashes
          in place of slashes
    alcz committed Nov 7, 2022

Commits on Nov 4, 2022

  1. Merge pull request #270 from APerricone/master

     added HB_CURLOPT_MAXLIFETIME_CONN and HB_CURLOPT_DEBUGBLOCK
    mlacecilia committed Nov 4, 2022

Commits on Oct 25, 2022

  1. 2022-05-03 08:45 UTC+0200 Antonino Perricone

      * contrib\hbcurl\hbcurl.ch
      * contrib\hbcurl\core.c
        + added HB_CURLOPT_MAXLIFETIME_CONN to setup max lifetime of connection
          see https://curl.se/libcurl/c/CURLOPT_MAXLIFETIME_CONN.html for more 
          information.
    
    2022-05-02 08:38 UTC+0200 Antonino Perricone
      * contrib\hbcurl\core.c
        + added HB_CURLOPT_DEBUGBLOCK to setup a block for debug information
          It takes a callback in the form of {|type, msg| ... }
          see https://curl.se/libcurl/c/CURLOPT_DEBUGFUNCTION.html for more 
          information.
      * contrib\hbcurl\hbcurl.ch
        + added HB_CURLINFOTYPE_* macros for debug block
    APerricone committed Oct 25, 2022

Commits on Oct 24, 2022

  1. Merge pull request #269 from harbour-page/master

    2022-10-23 11:30 UTC-0300 Lailton Fernando Mariano (lailton/at/harbou…
    mlacecilia committed Oct 24, 2022
  2. 2022-10-23 11:30 UTC-0300 Lailton Fernando Mariano (lailton/at/harbou…

    …r.page)
    
      * config/global.mk
        + add auto detect cpu arm64
      * config/darwin/global.mk
      * utils/hbmk2
        ! fix build dylibs with VM builtin to Darwin ( Mac OS )
    lailton committed Oct 24, 2022

Commits on Oct 17, 2022

  1. 2022-10-17 20:28 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * ChangeLog.txt
        * fixed log entry order
    druzus committed Oct 17, 2022
  2. 2022-10-17 20:13 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * contrib/hbcurl/hbcurl.hbm
        * updated system include path for new Linux distributions
    druzus committed Oct 17, 2022
  3. 2022-10-17 20:11 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * include/harbour.hbx
      * src/harbour.def
      * src/rdd/dbcmd.c
        + added two new functions:
             hb_FieldGet( <cFieldName> | <nFieldPos> )
                   -> <xFieldValue> | NIL
             hb_FieldPut( <cFieldName> | <nFieldPos>, <xFieldValue> )
                   -> <xFieldValue> | NIL
          They works like FieldGet() and FieldPut() but allows to use field
          name instead of field index.
    druzus committed Oct 17, 2022
  4. 2022-10-17 19:58 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * src/rdd/workarea.c
        * pacified warning
    druzus committed Oct 17, 2022
  5. 2022-10-17 19:57 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * include/hbvm.h
      * include/harbour.hbx
      * src/harbour.def
      * src/vm/hvm.c
        + added new C function:
             extern HB_EXPORT HB_BOOL hb_vmSetKeyPool( HB_BOOL fEnable );
          It allows to disable keyboard pooling by GT driver in main HVM loop.
          It's important in programs which mix GT terminal with GUI library
          which use common event loop. Many GUI objects are not reentrant
          safe and activating event loop during big changes may cause crash.
          Such things can happen in applications which try to mix HBQT
          and GTQTC. To avoid such problems before PRG code is called it's
          enough to disable keyboard pooling in main HVM loop, eg.
             if( hb_vmRequestReenter() )
             {
                HB_BOOL fKeyPool = hb_vmSetKeyPool( HB_FALSE );
                hb_vmPushEvalSym();
                hb_vmPush( pBlockItm );
                hb_vmSend( 0 );
                hb_vmSetKeyPool( fKeyPool );
                hb_vmRequestRestore();
             }
        + added new PRG function:
             __vmKeyPool( [<fEnable>] ) -> <fPrevState>
          It's PRG interface to above C function. If application uses GT driver
          and GUI library using the same event loop and such GUI library does not
          disable keyboard pooling in main HVM loop before PRG code is activated
          then it's enough to call this function at the beginning of application,
          eg.
             PROCEDURE INIT Clip()
                __vmKeyPool( .f. )
             RETURN
          With above peace of code you can mix HBQT or other QT wrapper with GTQTC.
    druzus committed Oct 17, 2022
  6. 2022-10-17 19:41 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * include/hbvm.h
      * include/harbour.hbx
      * src/harbour.def
      * src/vm/hvm.c
        + added new C function:
             extern HB_EXPORT HB_BOOL hb_vmSetKeyPool( HB_BOOL fEnable );
          It allows to disable keyboard pooling by GT driver in main HVM loop.
          It's important in programs which mix GT terminal with GUI library
          which use common event loop. Many GUI objects are not reentrant
          safe and activating event loop during big changes may cause crash.
          Such things can happen in applications which try to mix HBQT
          and GTQTC. To avoid such problems before PRG code is called it's
          enough to disable keyboard pooling in main HVM loop, eg.
             if( hb_vmRequestReenter() )
             {
                HB_BOOL fKeyPool = hb_vmSetKeyPool( HB_FALSE );
                hb_vmPushEvalSym();
                hb_vmPush( pBlockItm );
                hb_vmSend( 0 );
                hb_vmSetKeyPool( fKeyPool );
                hb_vmRequestRestore();
             }
        + added new PRG function:
             __vmKeyPool( [<fEnable>] ) -> <fPrevState>
          It's PRG interface to above C function. If application uses GT driver
          and GUI library using the same event loop and such GUI library does not
          disable keyboard pooling in main HVM loop before PRG code is activated
          then it's enough to call this function at the beginning of application,
          eg.
             PROCEDURE INIT Clip()
                __vmKeyPool( .f. )
             RETURN
          With above peace of code you can mix HBQT or other QT wrapper with GTQTC.
    druzus committed Oct 17, 2022
  7. 2022-10-17 19:17 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

      * include/hbvm.h
      * include/harbour.hbx
      * src/harbour.def
      * src/vm/hvm.c
        + added new C function:
             extern HB_EXPORT HB_BOOL hb_vmSetKeyPool( HB_BOOL fEnable );
          It allows to disable keyboard pooling by GT driver in main HVM loop.
          It's important in programs which mix GT terminal with GUI library
          which use common event loop. Many GUI objects are not reentrant
          safe and activating event loop during big changes may cause crash.
          Such things can happen in applications which try to mix HBQT
          and GTQTC. To avoid such problems before PRG code is called it's
          enough to disable keyboard pooling in main HVM loop, eg.
             if( hb_vmRequestReenter() )
             {
                HB_BOOL fKeyPool = hb_vmSetKeyPool( HB_FALSE );
                hb_vmPushEvalSym();
                hb_vmPush( pBlockItm );
                hb_vmSend( 0 );
                hb_vmSetKeyPool( fKeyPool );
                hb_vmRequestRestore();
             }
        + added new PRG function:
             __vmKeyPool( [<fEnable>] ) -> <fPrevState>
          It's PRG interface to above C function. If application uses GT driver
          and GUI library using the same event loop and such GUI library does not
          disable keyboard pooling in main HVM loop before PRG code is activated
          then it's enough to call this function at the beginning of application,
          eg.
             PROCEDURE INIT Clip()
                __vmKeyPool( .f. )
             RETURN
          With above peace of code you can mix HBQT or other QT wrapper with GTQTC.
    druzus committed Oct 17, 2022

Commits on Apr 28, 2021

  1. 2021-04-28 20:02 UTC+0200 Aleksander Czajczynski (hb fki.pl) [ci skip]

      * include/hbgtinfo.ch
        ! fixed comment, Alt+Numpad HB_GTI_KBDALT workaround was disabled by
          default here:
          2015-11-02 17:13 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
    alcz committed Apr 28, 2021

Commits on Apr 14, 2021

  1. 2021-04-14 22:25 UTC+0200 Aleksander Czajczynski (hb fki.pl)

      + src/rtl/vfilehi.prg
      * src/rtl/Makefile
      * src/harbour.def
      * include/harbour.hbx
        + added FILE API counterparts to hb_DirBuild() and hb_FNameExists()
          hb_vfDirBuild( <cDir> ) -> <lSuccess>
          hb_vfDirUnbuild( <cDir> ) -> <lSuccess>
          hb_vfNameExists( <cName> ) -> <lExists>
        ; their implementations are imported from 3.4
          https://github.com/vszakats/hb/blob/master/src/rtl/hbfilehi.prg
          but were renamed to fit in the hb_vf* namespace
    
      * src/rtl/hbfilehi.prg
        * use hb_LeftEq() instead of Left() ==
        ; partial merge of 3.4
          2015-07-27 14:26 UTC+0200 Viktor Szakats
        ! fix several sloppy checks where Empty() were
          used on strings while in fact a zero length
          check would have been correct.
        ; Empty() is a "weasel-word" when used on strings,
          should be used carefully and sparingly.
    
      * ChangeLog.txt
        % avoid spaces before EOLs
    alcz committed Apr 14, 2021

Commits on Apr 12, 2021

  1. 2021-04-12 21:18 UTC+0200 Aleksander Czajczynski (hb fki.pl)

      * src/rtl/hbfilehi.prg
        * hb_DirBuild() will now honor UNC "\\server\share\dir\tree" parameter
          on Windows and correctly create specified "\dir\tree" on remote
          server. If your code used a malformed "\\local\path" a regression
          in .prg code may happen on Windows. Previously a "\local\path"
          folder was created on current drive, as if the UNC specifier was
          omitted. It was more or less consistent with other platforms but
          not expected for this platform. Spotted by Maurizio la Cecilia (#233)
          [INCOMPATIBLE]
    
      * contrib/hbdoc/hbdoc.prg
      * contrib/hbformat/utils/hbformat.prg
      * contrib/hbnetio/utils/hbnetio/hbnetio.prg
      * package/harbour.mft
      * package/harbour.rc
      * src/compiler/hbusage.c
      * utils/hbi18n/hbi18n.prg
      * utils/hbtest/hbtest.prg
        * bumped copyright year to 2021
    alcz committed Apr 12, 2021

Commits on Apr 10, 2021

  1. 2021-04-10 23:32 UTC+0200 Aleksander Czajczynski (hb fki.pl)

      * contrib/hbfbird/firebird.c
        + added optional <cCollate> as 7-th parameter of FBCREATEDB( <cDB>,
           <cUser>, <cPass> <iPageSize>, <cCharSet>, <nDialect> [,<cCollate> ] )
          Based on request and example code from Ivanil Marcelino (#240)
    
      * contrib/hbpgsql/tpostgre.prg
        % var assignment readability
    
      * ChangeLog.txt
        ! corrected wrong date in prev entry
    alcz committed Apr 10, 2021

Commits on Apr 2, 2021

  1. 2021-03-31 20:37 UTC+0200 Aleksander Czajczynski (hb fki.pl)

      * contrib/hbpgsql/tpostgre.prg
        ! reverted previous commit 2021-04-01 15:55 UTC-0300 as invalid
          together with a little cleanup plus another minor cleanup
    alcz committed Apr 2, 2021

Commits on Mar 31, 2021

  1. 2021-03-31 23:43 UTC+0200 Aleksander Czajczynski (hb fki.pl)

      * contrib/hbpgsql/postgres.c
        ! guard PQEXECPARAMS() wrapper from generating unrecoverable error
          on empty parameter array "hb_xgrab requested to allocate zero bytes"
    
      * contrib/hbpgsql/tpostgre.prg
        ! corrected buggy parameter order in TPQserver():Query()
    
        * make TPQQuery, TPQRow classes more aware of NIL to NULL conversions,
          added support for inserting and updating empty xBase date value
          should fix issue #234, oRow:FieldPut( <n>, NIL ) also looks good
    alcz committed Mar 31, 2021
  2. 2021-03-31 21:26 UTC+0200 Aleksander Czajczynski (hb fki.pl)

      * contrib/hbpgsql/hbpgsql.hbx
      * contrib/hbpgsql/postgres.c
      * contrib/hbpgsql/postgres.ch
        + add most new wrappers from this repository of Petr Chornyj:
          https://github.com/petr-ch/hbpgsql9
          Version guards have been added and "params" functions reworked
          to accept hashes instead of two arrays. Other minor corrections
          to fit into the contrib env.
        + add PQsslAttribute()
        * some existing functions were modified to make the parameter
          check (and fail if wrong) even if the underlying API is not
          available, instead of silently returning a default value.
        ; all of the above was build-tested only and some features
          require at least postgresql 8, 9 or 9.1
    
        + add PQlibVersion() -> <nVersion> (returns 0 for pre-9.1 postresql
    versions)
          Ref: #127 by @VerchenkoAG
    
        + PQEXECPARAMS(): add 4th parameter to set <resultFormat>
          Refs:
            https://www.postgresql.org/docs/9.1/static/libpq-exec.html
            https://groups.google.com/d/msg/harbour-users/hXhuVzU9pHA/RrDGLIiUAwAJ
    
        + add PQresStatus( <nNum> ) -> <cString>
    
        + added wrapper function
          PQresultErrorField( result, nFieldCode ) -> cString
          based on:
    https://groups.google.com/d/msg/harbour-users/XSvRpbzfcHc/ztSL32fYpl4J
        + added PG_DIAG_* constants
    
        + added pg_encoding_to_char() wrapper to convert numeric
          encoding ID to string
    
        ! fixed to use hb_fopen() instead of fopen()
    
        + TPQserver():New(): all parameters are now optional
        ! TPQserver():New(): fixed to escape connect parameter values
        + TPQserver():New(): added 7th optional hash parameter to pass
    custom
          connection parameters (e.g. SSL)
             https://www.postgresql.org/docs/devel/static/libpq-connect.html
    
      * contrib/hbpgsql/tests/test.prg
        + use pg_encoding_to_char(), plus some more feedback regarding
    encodings
    
      * contrib/hbpgsql/tests/dbf2pg.prg
        + use VF IO
        + support more source field types
    
      ; synced with Viktor's 3.4 branch at https://github.com/vszakats/hb
        2017-02-15 15:14 UTC Viktor Szakats (vszakats users.noreply.github.com)
        2016-09-05 18:55 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
        2016-09-05 10:43 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
        2016-09-02 01:58 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
        2016-06-20 22:50 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
        2015-07-19 11:56 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
        2015-04-06 18:39 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
        2015-03-31 23:31 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
        2014-11-29 02:47 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
        2014-07-08 13:21 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
        2014-02-11 18:18 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
        ; tons of cleanups in this library, many thanks
    vszakats authored and alcz committed Mar 31, 2021
  3. 2021-03-31 20:38 UTC+0200 Aleksander Czajczynski (hb fki.pl)

      * contrib/hbpgsql/hbpgsql.h
      * contrib/hbpgsql/postgres.c
      * contrib/hbpgsql/tpostgre.prg
        + recognize NAMEOID columns
        + added :SetNull( <lSet> ) to TPQServer class
          and a param to :Query( <cQuery>, [ <lNull> ] )
          TPQQuery class constructor is also extended.
    
          With :SetNull( .T. ) retains NULL information as NIL. Standard
          behaviour of hbpgsql library, until now, was to substitute NULL
          as blank xBase value - thus :SetNull( .F. ) is the default setting.
    
      ; changes imported from https://github.com/alcz/harbour
        2015-05-07 22:24 UTC+0200 Aleksander Czajczynski (hb fki.pl)
    alcz committed Mar 31, 2021
Older