612 Commits

Author SHA1 Message Date
Przemysław Czerpak
e11ee84e6a 2023-04-20 15:12 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/gtqtc/gtqtc1.cpp
    % minor optimization in HB_GTI_PALETTE

  * src/rtl/checkbox.prg
  * src/rtl/listbox.prg
  * src/rtl/pushbtn.prg
  * src/rtl/radiobtn.prg
  * src/rtl/radiogrp.prg
  * src/rtl/scrollbr.prg
  * src/rtl/tbcolumn.prg
  * src/rtl/tbrowse.prg
  * src/rtl/teditor.prg
  * src/rtl/tget.prg
  * src/rtl/tgetlist.prg
  * src/rtl/tlabel.prg
  * src/rtl/tmenuitm.prg
  * src/rtl/tmenusys.prg
  * src/rtl/tpopup.prg
  * src/rtl/treport.prg
  * src/rtl/tsymbol.prg
  * src/rtl/ttextlin.prg
  * src/rtl/ttopbar.prg
    ! use :Init() method instead of :New() to initialize object instance
      variables. In Class(y) :New() is class message not object one.
2023-04-20 15:12:07 +02:00
Przemysław Czerpak
1aac73c6bf 2023-02-01 13:49 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/xhb/xhb.hbx
    * added reference to SetErrorMode()
2023-02-01 13:49:51 +01:00
Przemysław Czerpak
72538bb26c 2023-02-01 13:43 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/xhb/xhberrc.c
    + implemented Harbour version of SetUnhandledExceptionFilter() and
      SetErrorMode()

  * src/rtl/diskspac.c
    % use GetDiskFreeSpaceEx() directly on Win64 instead of accessing it
      by GetProcAddress()

  * ChangeLog.txt
    ! typo in file name in previous commit
2023-02-01 13:43:46 +01:00
Przemysław Czerpak
b94a8c4985 2023-01-31 23:19 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
+ contrib/xhb/xhberror.prg
    ! added file missing in previous commit:
      added code which extends Harbour error objects adding functionality
      known from xHarbour:
         oError:ProcName
         oError:ProcLine
         oError:ProcModule
      Above instance variables are initialized automatically when error
      object is created.
      To enable this functionality it's enough to add to PRG code:
         REQUEST xhb_ErrorNew
2023-01-31 23:19:40 +01:00
Przemysław Czerpak
807c7d8e8b 2023-01-31 14:59 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbapierr.h
  * src/harbour.def
  * src/rtl/errapi.c
    + added new C function:
         void hb_errReinit( PHB_ITEM pError );
      it allows to replace default error object with user custom one which
      support :Init() method

  * contrib/xhb/xhb.hbp
  + contrib/xhb/xhb.h
  + contrib/xhb/xhberror.prg
    + added code which extends Harbour error objects adding functionality
      known from xHarbour:
         oError:ProcName
         oError:ProcLine
         oError:ProcModule
      Above instance variables are initialized automatically when error
      object is created.
      To enable this functionality it's enough to add to PRG code:
         REQUEST xhb_ErrorNew

  * contrib/xhb/xhberr.prg
    * use error object :Proc*() methods if they are available
    - removed PRG version of xhb_ErrorNew()

  * contrib/xhb/xhbmemo.prg
  * contrib/xhb/xhbtedit.prg
    ! use xhb_ErrorNew() instead of ErrorNew() which does not support
      any parameters

  * include/hbapicls.h
    ; typo in comment
2023-01-31 14:59:17 +01:00
Przemysław Czerpak
004d53a594 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.
2023-01-23 12:28:36 +01:00
Lailton Fernando Mariano
8cce53b389 2023-01-17 13:00 UTC-0300 Lailton Fernando Mariano (lailton/at/paysoft.com.br)
* contrib/hbcurl/hbcurl.hbm
  * contrib/hbssl/hbssl.hbm
    * updated system include path for new Linux distributions
2023-01-17 13:01:36 -03:00
Przemysław Czerpak
9744fb04fd 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.
2023-01-16 14:35:47 +01:00
Przemysław Czerpak
2975eadbba 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
2023-01-15 11:17:33 +01:00
Przemysław Czerpak
2b405dd35b 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
2022-11-11 21:16:00 +01:00
Aleksander Czajczynski
9796e3a16e 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
2022-11-07 09:25:04 +01:00
Antonino Perricone
ea5f8f72ac 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
2022-10-25 05:07:01 +02:00
Przemysław Czerpak
d6635555e6 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
2022-10-17 20:13:22 +02:00
Aleksander Czajczynski
2834f783b3 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
2021-04-12 21:17:27 +02:00
Aleksander Czajczynski
1fa5d5432f 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
2021-04-10 23:32:41 +02:00
Aleksander Czajczynski
b03bef938e 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
2021-04-02 20:37:13 +02:00
Marco Aurelio
35e2d76d79 Fix refresh method 2021-04-01 16:00:25 -03:00
Aleksander Czajczynski
8a8575609a 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
2021-03-31 23:43:52 +02:00
Viktor Szakats
ff3a726edf 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: https://github.com/harbour/core/pull/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
2021-03-31 21:26:42 +02:00
Aleksander Czajczynski
864c0e6315 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)
2021-03-31 20:39:02 +02:00
Phil Krylov
e0acf88485 2021-01-25 02:45 UTC+0100 Phil Krylov (phil a t newstar.rinet.ru) (#230) 2021-01-26 20:00:42 +03:00
Przemysław Czerpak
e5ab1e3a46 2020-06-30 18:01 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/gtqtc/gtqtc.hbc
    * added default Qt5 path in Ubuntu64

  * contrib/gtqtc/gtqtc1.cpp
    + added support for horizontal wheel events
    * do not try to load image when zero length string is used as image name
      to refresh screen in HB_GTI_DISPIMAGE
2020-06-30 18:01:42 +02:00
Przemysław Czerpak
18e86e0206 2020-04-20 15:01 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/gtqtc/gtqtc.hbp
    * added default Qt5 path in Ubuntu64

  * debian/compat
    * changed compatibility level from 5 to 9

  * src/rdd/workarea.c
    ! do not use casting to functions with incompatible parameters.
      Such casting does not work with some ABIs, i.e. when pascal
      calling convention is used and called function should clean
      parameters from the stack.
      This modification should also pacify warnings generated by
      recent GCC versions.
2020-04-20 15:01:57 +02:00
Przemysław Czerpak
e2ebc916a9 2020-04-19 16:32 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbct/dattime2.c
    % minor optimization

  * src/rdd/dbsql.c
    ; added somment with syntax info

  * include/inkey.ch
  * src/rtl/hbgtcore.c
    + added support for mouse wheel left and right events to base GT code
2020-04-19 16:32:11 +02:00
Przemysław Czerpak
49a289a1a3 2020-03-24 23:34 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* config/linux/clang.mk
    ! fixed rule for dynamic library

  * src/3rd/png/Makefile
    + added -DPNG_ARM_NEON_OPT=0 to build flags

  * contrib/3rd/sqlite3/sqlite3.c
  * contrib/3rd/sqlite3/sqlite3.diff
    ! pacified warning

  * contrib/gtwvg/gtwvgd.c
  * contrib/gtwvg/wvgwing.c
    ! fixed missing break/return in case statements - please verify it.

  * contrib/hbct/dattime3.c
    * added #define _DEFAULT_SOURCE necessay in new Linux distors

  * contrib/hblzf/3rd/liblzf/liblzf.diff
  * contrib/hblzf/3rd/liblzf/lzfP.h
    * do not use nested #define in #if statements - some C compilers do not
      support it

  * contrib/hbssl/bio.c
    ! tuned #if condition

  * contrib/hbmisc/hbeditc.c
    * simpliefied for condition and pacified warning

  * contrib/hbodbc/hbodbc.hbp
  * contrib/sddodbc/sddodbc.hbp
    + added check for iodbc library

  * utils/hbmk2/hbmk2.prg
    + added support for clang in android builds

  * include/hbdefs.h
    + added check for __BYTE_ORDER__ macro used in some new lib C
      implementations

  * include/hbapi.h
  * include/hbdefs.h
  * include/hbstack.h
  * include/hbvmpub.h
  * src/vm/classes.c
  * src/vm/dynsym.c
  * src/vm/estack.c
  * src/vm/memvars.c
    + extended the size of dynamic symbol table from 65535 to 4294967295.
      Adopting class code I decided to keep current algorithm of method indexes
      hashing with only some minor modifications. It's very fast anyhow it may
      cause noticeable (though static) quite big memory allocation for class
      definitions in applications using millions of symbols and which increase
      dynamic symbol table at runtime loading new classes dynamically form .hrb,
      .dll, .so or other dynamic libraries supported by Harbour. It's random
      and rather impossible to exploit situation in real life anyhow I cannot
      exclude it so I'd like to report it in ChangeLog. The solution is very
      simple, i.e. it's enough to use classic divide et impera algorithm using
      symbol numbers to find method definition anyhow it will be slower then
      current one and address only very seldom hypothetical situations so I
      decided to not implement it. Such static memory cost begins to be
      completely unimportant in the world of 64-bit architectures and extremely
      big memory address space.
      The modification was sponsored by TRES company.

  * src/vm/estack.c
    ! fixed __mvClear() in MT builds - due to stupid typo GetList variable
      was removed in MT programs by CLEAR MEMORY command (__mvClear())
      So far noone reported it and I've found it analyzing the code before
      increasing symbol table size.

  * contrib/hbwin/hbolesrv.c
    * updated for new size of dynamic symbol table
2020-03-24 23:34:35 +01:00
Maurizio la Cecilia
89511e9fce 2020-02-04 21:12 UTC+0100 Maurizio la Cecilia (m.lacecilia/at/gmail.com)
* contrib/hbformat/hbfmtcls.prg
    ! fixed wrong spacing between comment indicators
2020-02-04 21:13:58 +01:00
Aleksander Czajczynski
b337909ce6 2020-01-31 15:34 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* src/rtl/listbox.prg
    ! fix listbox scroll bar position calculation to not rely on
      default Cl*pper compatible division by zero error handler.
      Thanks to tarpauwatratar for the report and fix suggestion
      on the developers list.

  * 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 2020

  * ChangeLog.txt
    * function name typo + file case corrected
2020-01-31 15:34:40 +01:00
Maurizio la Cecilia
5bc50fd268 2019-12-03 10:55 UTC+0100 Maurizio la Cecilia (m.lacecilia/at/gmail.com)
* contrib/hbformat/hbfmtcls.prg
    ! many fixes as suggested by Viktor Szakats and already applied to
      his 3.4 fork
      many fixes derived by usergroup threads
      (fixed formatting in comments, codeblocks, operators, etc.)
    ! fixed case of unknown function as in pull request of Niko (nicolasrod)
      https://github.com/harbour/core/pull/139
  * contrib/hbformat/utils/hbformat.prg
    * imported some enhancements from Viktor Szakats 3.4 fork:
      . use hb_leftEq(), hb_vf*() functions where possible
      . localization of message text
  * contrib/hbwin/hbwin.hbx
  * contrib/hbwin/wapi_shellapi.c
    + added the function wapi_ShellExecuteWait()
      code by Antonino Perricone changed by me to be independent of FiveWin
      https://groups.google.com/d/msg/harbour-users/w-fOOaC1M_g/K8B8jHgFCQAJ
      Syntax:
      wapi_ShellExecuteWait([<hWnd>], [<cOperation>], [<cFile>], [<cParameters>],
                            [<cWorkDirectory>], [<nShowCmd>]) ? nResult
      The function acts as wapi_ShelleExecute() but it waits for the completion
      before returning
  * src/rtl/tmenusys.prg
    * forced the menu system to not close current popup after menu action
      suggestion by Mario Wan Stadnik, see at:
      https://groups.google.com/d/topic/harbour-users/EEv1bKjci-Y/discussion
2019-12-03 10:55:07 +01:00
Maurizio la Cecilia
20f07da421 2019-09-26 18:30 UTC+0200 Maurizio la Cecilia (m.lacecilia/at/gmail.com)
* contrib/xhb/hbxml.c
    ! fixed the compliance to the element tag naming rules:
      . the element name must begin with alpha or underscore characters
      . the element name can contain also period characters
      . the closing tag can contain spaces between the name and the closing bracket
2019-09-26 23:04:29 +02:00
Phil Krylov
258865df08 Revert "Error to build harbour for Android" 2019-03-26 11:40:19 +03:00
Lailton Fernando Mariano
d8b5fbf278 Error to build harbour for Android 2019-03-26 01:55:04 -03:00
Mindaugas Kavaliauskas
d633d30d8c 2019-03-19 18:12 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* config/win/global.mk
  * utils/hbmk2/hbmk2.prg
    ! moved winmm library before kernel32. This fixes Harbour compile and
      application run on Win7 and previous Windows versions if latest MinGW
      is used.
    ; Win8+ exports timeGetTime() from both kernel32.dll and winmm.dll.
      Previous windows version exports this function only from winmm.dll.
      See discussion at https://github.com/msys2/MINGW-packages/issues/4984

  * utils/hbmk2/hbmk2.prg
    ! Fixed dependency detection. Setting HB_WITH_<package>=local was ignored
      if packages were detected using pkg-config

  * contrib/hbexpat/3rd/expat/siphash.h
    ! fixed compile error for BCC <= 5.6
    * rediffed
2019-03-19 18:13:42 +02:00
Przemysław Czerpak
1b10c22cee 2019-02-11 13:51 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/gtqtc/gtqtc1.cpp
  * src/rtl/gtxwc/gtxwc.c
    ! added /* fallthrough */ comments to pacify warnings
2019-02-11 13:51:35 +01:00
Przemysław Czerpak
d0be194907 2019-02-11 13:43 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* bin/commit.hb
    ! fixed UTC offset formatting

  * contrib/hbwin/win_os.prg
    * updated win_osNetRegOk() for modern MS-Windows versions:
      - on Win7 and upper set
        System\CurrentControlSet\Services\LanmanServer\Parameters\DisableLeasing
        to disable opportunistic locks.
      - do not force SMB1 to disable oplocks on Win7 and upper - new MS-Win10
        does not support SMB1 at all so this setting on the server with
        such system completely disables SMB network and forcing SMB1 on the
        client side blocks access to new Win10 servers.
        Warning! this setting is still activated on Vista so it cannot
                 connect work with new Win10 but I do not know any other
                 working method to disable oplocks in Windows Vista.
    * synced with Viktor's branch

  * contrib/xhb/hbserv.c
    ! added missing return

  * include/harbour.hbx
  * src/harbour.def
  * src/rtl/version.c
    + added new PRG functions:
         hb_osIsWin7(), hb_osIsWin8(), hb_osIsWin81(), hb_osIsWin10()

  * src/rtl/gttrm/gttrm.c
    + added autodetection for few other XTerm compatible terminals
    + respect color extension in TERM name of all XTerm compatible
      terminals

  * utils/hbmk2/hbmk2.prg
    + added support for -cpp=isoXX borowed from Viktor's branch

  * contrib/gtqtc/gtqtc.hbc
  * contrib/gtqtc/gtqtc.hbp
    * use -cpp=iso11 required for QT 5.7.0 or upper
    * extended QT detection and partial syncing with Viktor's branch
2019-02-11 13:43:40 +01:00
Aleksander Czajczynski
362b7a32de 2019-02-11 13:09 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* contrib/sddsqlt3/core.c
    ! fix DBUSEAREA() operation with SQLITE3 SDD to return empty result
      when query conditions are false or the source table has no rows.

      Previously an logically correct example caused RTE:
      DBUSEAREA(,, "SELECT * FROM existing_table WHERE FALSE")

    ! fix double-free error in sqLite3Disconnect(), looks like the
      sqlite3_close() return value checking was reverted, SQLITE_OK is 0

    * use CDP API to get UTF8 string length

    * use new sqlite3_prepare_v3() when built against
      sqlite 3.20.0 or upper (change borrowed from Viktor's 3.4 fork)

    + add HB_SQLT3_MAP_DECLARED_EMULATED define (not yet enabled by default)
      which make this SDD additionally parse SQLite column declarations.
      Right now it can make HB_FT_DATE fields working using standard
      ISO 8601 "yyyy-mm-dd" syntax. Also declarations not significant for
      SQLite, but useful in xBase-style programming - SQL numeric(len,dec)
      columns are detected in this mode and will be reflected in dbStruct().

    + add support for alternative StoD() like syntax for HB_FT_DATE columns

    + add support for ISO 8601 "YYYY-MM-DD HH:MM:SS.FFF" timestamp declared
      columns, SQLite stored strings are converted to proper HB_FT_TIMESTAMP
      fields

    + added HB_SQLT3_FIELDNAME_STRICT define, which enables shortening
      of field to "name" if SQLite returns "table.name". Such fields are
      not completly usable in xBase code - WA->T.FIELD syntax is not
      valid, but FieldPos("t.field") is OK. I think it should be default
      behaviour or some runtime setting should be introduced for convenience
      when working with specific SQL queries.

  * contrib/rddsql/sqlbase.c
  * contrib/rddsql/sqlmix.c
    + added ZAP functionality to SQLBASE and SQLMIX RDDs,
      index tags are preserved while ZAP-ing SQLMIX area.
      They are cleaned, no REINDEX is needed

    * changed to allow values of any type in "V" SIX3 / HB_FT_ANY fields
      in SQLBASE/SQLMIX RDD workareas

  * contrib/hbfoxpro/relfunc.c
    ! fix InList() FoxPro compatible function not looking at the last
      parameter passed. Thanks to Attila Szabo for the information
      posted on the developers list.
2019-02-11 13:10:05 +01:00
Przemysław Czerpak
a8a09d1dc0 2019-01-25 12:26 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/xhb/hbxml.c
    ! fixed memory leak
2019-01-25 12:26:32 +01:00
Aleksander Czajczynski
7cd5ffb243 2019-01-15 12:50 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* README.md
    * verified links to referenced libraries, go https where applicable.
      Thanks to Pawel Wojciechowski for the location of ADS client
library.

  * src/rtl/arc4.c
    ! fix builds on Alpine Linux and possibly others using musl libc,
      which in turn doesn't expose deprecated sysctl() anymore.

  * 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 2019
2019-01-15 12:50:27 +01:00
bedipritpal
c6c9937ab6 2019-01-14 12:18 UTC-0800 Pritpal Bedi (bedipritpal/at/hotmail.com)
* contrib/gtwvg/wnd.prg
    ! Fixed: x,y,w,h values if aPos and aSize parameters were
	  containing negatve values.

  * contrib/gtwvg/paint.prg
    ! Fixed to return proper color index if a compound color string
	  is supplied to wvt_GetRGBColorByString().

	; Above patch provided by Jose Quintas - many thanks.
2019-01-14 12:24:00 -08:00
bedipritpal
2f24768cdb 2019-01-11 13:52 UTC-0800 Pritpal Bedi (bedipritpal/at/hotmail.com)
* contrib/gtwvg/wnd.prg
  * contrib/gtwvg/activex.prg
    ! modified to honor plain hWnd as container window instead of an
      WvgWnd() object.
  * contrib/gtwvg/gtwvgd.c
    + added - HB_GTI_VIEWPORTHEIGHT and HB_GTI_VIEWPORTWIDTH handelling.
    ! Pacified some warnings reported by BCC-720.
  * contrib/gtwvg/wvgcore.c
  * contrib/gtwvg/wvgcuig.c
    ! Pacified some warnings reported by BCC-720.
2019-01-11 14:02:42 -08:00
Maurizio la Cecilia
4c35339898 2018-12-31 15:32 UTC+0100 Maurizio la Cecilia (m.lacecilia/at/gmail.com)
* contrib/hbssl/hbssl.hbc
    * made compliant also for Windows static builds
  * ChangeLog.txt
    * restored UTF-8 encoding after previous wrong commit (Sorry!!!)
2018-12-31 15:32:57 +01:00
Maurizio la Cecilia
039fb78b46 2018-12-29 19:36 UTC+0100 Maurizio la Cecilia (m.lacecilia/at/gmail.com)
* contrib/hbssl/hbssl.hbp
    * added import libraries to link with OpenSSL current version
  * contrib/hbcurl/hbcurl.hbp
    * added import libraries to link with cUrl current version
  * contrib/hbwin/wapi_winuser_1.c
  * contrib/hbwin/hbwin.hbx
    * added wapi_ShowWindow() wrapper
2018-12-29 19:36:53 +01:00
Maurizio la Cecilia
16f40faa74 2018-12-17 12:00 UTC+0100 Maurizio la Cecilia (m.lacecilia/at/gmail.com)
* contrib/xhb/hbxml.c
    ! fixed the lacking of correct settings of previous node in 
      mxml_node_insert_before(), that was causing the omitting 
      of the inserted nodes in saves and searches.
2018-12-17 12:33:04 +01:00
Przemysław Czerpak
611a7ac281 2018-11-16 16:33 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbssl/bio.c
  * contrib/hbssl/err.c
  * contrib/hbssl/evp.c
  * contrib/hbssl/evpciph.c
  * contrib/hbssl/evpenc.c
  * contrib/hbssl/evpmd.c
  * contrib/hbssl/evppkey.c
  * contrib/hbssl/hbssl.ch
  * contrib/hbssl/hbssl.h
  * contrib/hbssl/hbssl.hbx
  * contrib/hbssl/pem.c
  * contrib/hbssl/rand.c
  * contrib/hbssl/ssl.c
  * contrib/hbssl/ssl_hb.c
  * contrib/hbssl/ssl_inet.c
  * contrib/hbssl/ssl_sock.c
  * contrib/hbssl/sslciph.c
  * contrib/hbssl/sslctx.c
  * contrib/hbssl/sslsess.c
  * contrib/hbssl/x509.c
    * synced with Viktor's 3.4 branch and updated to OpenSSL 1.1

  * include/hbsocket.h
  * src/rtl/hbsocket.c
    + added new C function:
         HB_U16 hb_socketNToHS( HB_U16 netshort )

  * include/hbapiitm.h
  * src/vm/itemapi.c
    + added new C functions:
         const char * hb_itemGetCRef( PHB_ITEM pItem, void ** phRef,
                                      HB_SIZE * pnLen );
         void hb_itemFreeCRef( void * hRef );
      hb_itemGetCRef() locks string inside character item so it cannot be
      released when item is cleared an hb_itemFreeCRef() unlocks it and
      free if item holding it was cleared.
2018-11-16 16:33:28 +01:00
Przemysław Czerpak
8230fcc258 2018-09-14 15:36 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/harbour.hbx
  * include/hbchksum.h
  * src/harbour.def
  * src/rtl/hbmd5.c
    + added new C function
         void hb_hmac_md5( const void * key, HB_SIZE nKeyLen,
                           const void * message, HB_SIZE nMsgLen,
                           char * digest );
    + added new PRG function
         HB_HMAC_MD5( <cMessage>, <cKey> ) -> <cMAC>
    ; HMAC MD5 is used in some authentication methods i.e. CRAM-MD5
      authentication in SMTP protocol

  * src/rtl/gttrm/gttrm.c
    + enable extended XTERM colors automatically when xterm-16color,
      xterm-256color, xterm+256color, xterm-88color, rxvt-16color,
      rxvt-256color, rxvt-98color or putty terminal is detected
    + added support for HB_GTI_SCREENDEPTH

  * contrib/gtqtc/gtqtc1.cpp
    + set clipboard data also into selection buffer on platforms which
      support it
    + when main clipboard buffer is empty retrieve clipboard data from
      selection buffer and if it's empty too from find buffer

  * include/harbour.hbx
  * src/harbour.def
  * src/vm/memvars.c
    + added new PRG function
         __mvGetDef( <cMemvar> [, <xDefault> ] ) -> <xValue>
      it works in similar way to __mvGet() but if <cMemvar> does
      not exist then it returns <xDefault> or NIL instead of RTE

  * contrib/hbwin/hbwin.hbx
    + added missing declarations for win_osIs10() and win_osIs81()

  * contrib/hbssl/ssl.c
    ! fixed compilation with OpenSSL < 0.9.8k

  * contrib/sddodbc/core.c
    * pacified warning

  * contrib/xhb/hbxml.c
  * contrib/xhb/hbxml.h
    ! fixed CDATA terminator, it should be "]]>" instead of " ]]>"
    + added support for HBXML_STYLE_NONEWLINE flag

  * src/3rd/pcre/Makefile
    ! typo wince -> wce

  * src/main/Makefile
    * use harbour.rc only in MS-Windows builds - it fixes OS2 OpenWatcom
      builds

  * config/global.mk
    ! in DOS builds check if the 'uname' exists before running it

  * include/hbapigt.h
  * include/hbgtcore.h
  * src/rtl/hbgtcore.c
  * src/rtl/inkey.c
  * src/rtl/inkeyapi.c
  * contrib/xhb/xhbfunc.c
    + added 3-rd parameter to hb_inkeySetText() function. When this parameter
      is true then ';' is not translated to Chr( 13 ) but DOS and UNIX EOLs
      are translated to Chr( 13 )
    + added logical parameter to HB_GTI_CLIPBOARDPASTE which allows to set
      text without ';' translation but with platform independent EOLs

  * src/rtl/memoedit.prg
  * utils/hbmk2/hbmk2.prg
  * contrib/hbnetio/utils/hbnetio/_console.prg
  * extras/dbu/dbu52.patch
  * extras/dbu/dbu53.patch
    * use hb_gtInfo( HB_GTI_CLIPBOARDPASTE, .T. ) instead of
      hb_gtInfo( HB_GTI_CLIPBOARDPASTE ) for pasting data from clipboard
      with platform independent EOLs and ';' characters
2018-09-14 15:36:21 +02:00
Aleksander Czajczynski
de1d478d2c 2018-09-02 23:07 UTC+0200 Aleksander Czajczynski (hb fki.pl)
* include/hbsetup.h
    * changed to recognize ARM64 platform with modern GCC builds
2018-09-02 23:09:29 +02:00
Lailton
0c739d7bcd Error to build harbour with bcc <= 5.8.2 2018-06-04 01:36:41 -03:00
maurilio
9183c2a865 2018-05-11 12:23 UTC+0200 maurilio (maurilio.longo@libero.it)
* contrib/hbssl/hbssl.hbx
  * contrib/hbssl/ssl.c
    + Added function SSL_set_tlsext_host_name() which is needed to access
      a virtual host when using HTTPS.
      See https://en.wikipedia.org/wiki/Server_Name_Indication
    + Added function SSL_set_verify().
  * src/rtl/fstemp.c
    ! hb_fsTempName() was not returning a valid temp name on OS/2
2018-05-11 12:32:50 +02:00
Aleksander Czajczynski
a1cc5beb98 2018-02-13 13:23 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* contrib/sddodbc/core.c
      ! fix DBCreate() GPF when RDDSQL is active and connection is via SDDODBC
2018-02-13 13:23:29 +01:00
Aleksander Czajczynski
4047c53980 2018-02-12 10:00 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* contrib/hbnetio/netiocli.c
    ! fix indentation
2018-02-12 10:00:00 +01:00
Aleksander Czajczynski
8545d4b8b6 2018-02-11 23:40 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* include/hbapi.h
  * src/common/hbver.c
  * src/harbour.def
  * contrib/hbwin/win_osc.c
    * synced Windows version detection code with Viktor's work in 3.4

  * src/main/Makefile
  + src/main/harbour.rc
    * include Windows manifest in standalone compiler - "harbour.exe /build"
      should now correctly report Windows 10. "yourapp.exe //build" plus
      in-app results still depend on manual manifest inclusion within .rc
2018-02-11 23:40:11 +01:00