Commit Graph

463 Commits

Author SHA1 Message Date
Przemysław Czerpak
d89d2ea0d5 2015-12-23 18:57 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/hvm.c
    ! added missing HB_STACK_TLS_PRELOAD - thanks to Viktor for the info
2015-12-23 18:57:58 +01:00
Przemysław Czerpak
b058c205e6 2015-12-23 17:53 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/harbour.hbx
  * src/vm/hvm.c
    + added new PRG function:
         __RecoverErrorBlock() -> <bError> | NIL
      It extracts previous error block pushed on HVM stack
      by BEGIN SEQUENCE WITH ...

  * src/rdd/dbf1.c
    ! fixed detecting VFP tables broken in my previous
      modification - thanks to Mario H. Sabado for information
      about the problem.
2015-12-23 17:53:42 +01:00
Przemysław Czerpak
5b361cb9f5 2015-12-16 19:09 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/common/hbfopen.c
    ! do not use _wfsopen() in MinGW-CE builds - it does not support it
      (Thanks to Abe)
2015-12-16 19:09:21 +01:00
Przemysław Czerpak
d074db1033 2015-12-15 23:48 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* config/dos/watcom.mk
  * config/win/watcom.mk
  * config/linux/watcom.mk
    ! enabled -bd OpenWatcom switch for code compiled as part of dynamic
      libraries
    * use CauseWay as default DOS extender for dynamic DOS builds

  * config/dyn.mk
  * config/lib.mk
  * src/Makefile
    ! fixed list of libraries used to create Harbour DLL in DOS builds

  * config/bin.mk
  * src/vm/Makefile
    * create hbmainstd library for OpenWatcom DOS shared builds

  * src/vm/maindllh.c
    + added DLL entry function for CauseWay DLLs in OpenWatcom builds

  * src/vm/main.c
    * include maindllh.c in OpenWatcom DOS shared builds

  * utils/hbmk2/hbmk2.prg
    + added support for dynamic binaries in DOS OpenWatcom builds.
      Support for CauseWay DLLs is still broken in current OpenWatcom
      builds so it will have to wait for the fix to be usable.

  * src/vm/dynlibhb.c
    + added support for dynamic libraries to OpenWatcom DOS builds.
      Now it's enabled only in harbour.dll due to problems with
      CW and current OW.

  * src/3rd/zlib/zconf.h
  * src/3rd/zlib/zlib.dif
    * use OS2 patch for exporting ZLIB symbols also in DOS builds

  * src/rdd/dbf1.c
    * pacified warning
2015-12-15 23:48:52 +01:00
Przemysław Czerpak
e44ed3d3df 2015-12-15 19:50 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/common/hbfopen.c
    * use *fsopen() function instead of *fopen() in most of
      DOS, OS2 and MS-Windows builds
2015-12-15 19:50:35 +01:00
Przemysław Czerpak
ce6d06f45c 2015-12-14 14:52 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/dynlib/Makefile
    ! yet another fix for building harbour without MT support HB_MT=no
2015-12-14 14:52:37 +01:00
Przemysław Czerpak
9e04ac8ad3 2015-12-14 14:34 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbproces.c
    + protect DosExecPgm() and standard file IO redirection in OS2 builds
      by GT mutex
2015-12-14 14:34:51 +01:00
Przemysław Czerpak
7b7ac86752 2015-12-10 17:24 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/filesys.c
    * added HB_OS2_NONAMEDPIPES macro for OS2 build tests
  * src/rtl/hbproces.c
    * formatting
2015-12-10 17:24:10 +01:00
Przemysław Czerpak
ea09561adf 2015-12-09 14:22 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/dbinfo.ch
  * include/hbrdddbf.h
  * src/rdd/dbf1.c
    + added new RDD switch RDDI_SETHEADER
      It allows to define how DBF header is updated in tables which
      will be opened later, i.e.:
         // maximize performance reducing number of DBF header updating
         // header is updated only when table is closed if before new
         // record was added
         hb_rddInfo( RDDI_SETHEADER, DB_SETHEADER_MINIMAL )
      or:
         // update header in the same moment as Clipper and xBase++
         // and store only last two digit from the year for compatibility
         // with old dBase and FoxPro versions
         hb_rddInfo( RDDI_SETHEADER, ;
                     hb_bitOr( DB_SETHEADER_CLIPPER, DB_SETHEADER_YYEAR ) )
         // DB_SETHEADER_CLIPPER
      By default Harbour uses DB_SETHEADER_APPENDSYNC.
      For more information look at comments for DB_SETHEADER_* switches
      in dbinfo.ch
    + added new table switch DBI_SETHEADER
      It has the same meaning as RDDI_SETHEADER but changes the header
      updated mode of already open table by dbInfo() function.

  * src/rtl/filebuf.c
    ! added missing redirection for Configure() method.

  * src/rtl/hbproces.c
    ! fixed sysconf() emulation for OpenWatcom 1.9 and earlier to work with
      _SC_PAGESIZE
2015-12-09 14:22:57 +01:00
Przemysław Czerpak
071cdda627 2015-12-05 10:05 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/gtos2/gtos2.c
    ! fixed GCC builds - many thanks to David Macias
2015-12-05 10:05:59 +01:00
Przemysław Czerpak
380760672d 2015-12-03 12:26 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbstack.h
  * src/vm/estack.c
    + added new C function:
         HB_ISIZ hb_stackBaseSymbolOffset( PHB_SYMB pSymbol );
      it returns offset of pSymbol function frame on HVM stack or -1
      if function/procedure pointed by pSymbol is not called.

  * contrib/hbnetio/readme.txt
  * contrib/hbnetio/netiosrv.c
  * contrib/hbnetio/hbnetio.hbx
    + added new server side function:
         netio_ServedConnection() -> <pConnectionSocket>
      It returns connection served by netio_Server() in current thread and
      can be used inside executed RPC functions to access <pConnectionSocket>
2015-12-03 12:26:07 +01:00
Przemysław Czerpak
43006ae7e9 2015-12-01 22:46 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rdd/dbf1.c
    * update DBF header only after modification in COMMIT and CLOSE methods.
      It's Cl*pper and xBase++ compatible behavior anyhow it also means that
      number of records in DBF header is not modified just after APPEND
      so it cannot be used to synchronization in concurrent file access.

  * src/rtl/hbproces.c
    ! safe and restore hb_fsError() when unused pipe handles are closed
      in hb_fsProcessOpen()
    ! add extension (.com or .exe) in hb_fsProcessOpen()/hb_fsProcessRun()
      when executed command is given with PATH part and without extension.
      It's documented that DosExecPgm() needs full filename in such case.
      It fixes problem with contrib/make.hb which calls hbmk2 with directory
      part but without extension.
    ! enabled pipes instead of temporary files for stdio redirection in OS2
      builds of hb_fsProcessRun() - now it should work correctly.

  * src/rtl/hbprocfn.c
    + update FError() in hb_Proces*() functions
2015-12-01 22:46:39 +01:00
Przemysław Czerpak
f55c0a997a 2015-11-30 14:56 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbjson.h
  * src/rtl/hbjson.c
    + added new C function:
         char * hb_jsonEncodeCP( PHB_ITEM pValue, HB_SIZE * pnLen,
                                 HB_BOOL fHuman, PHB_CODEPAGE cdp );
      It allows to pass explicitly codepage in which strings inside pValue
      are encoded. If cdp parameter is not NULL then it's used to extract
      unicode character values from passed strings and this values is used
      to encode to encode non ASCII characters as "\uXXXX" where XXXX is
      unicode character value. Data serialized in such way is 7bit clean.
      If this parameter is NULL then strings are encoded in raw form just
      like in hb_jsonEncode().
    + added new C function:
         HB_SIZE hb_jsonDecodeCP( const char * szSource, PHB_ITEM pValue,
                                  PHB_CODEPAGE cdp );
      It allows to pass explicitly codepage used for strings decoded from
      JSON data. If this parameter is NULL then strings are decoded in raw
      form and unicode character with code over 255 are converted to '?'
      char.
    + added optional 3-rd parameter with codepage ID to PRG functions
      hb_jsonEncode() and hb_jsonDecode(). If this parameter is not given
      then above functions works like before this modification:
      hb_jsonEncode() uses raw string encoding and hb_jsonDecode() uses
      current HVM CP to decode characters encoded as \uXXXX.
    + modified PRG function hb_jsonDecode() to return decoded data
      instead of length of decoded data when second parameter is not
      passed by reference.
2015-11-30 14:56:10 +01:00
Przemysław Czerpak
706a75cece 2015-11-25 15:06 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/harbour.hbx
  * src/rtl/dateshb.c
    + added two new PRG functions:
         hb_SecToT( <nSeconds> ) -> <tTime>
         hb_MSecToT( <nMilliseconds> ) -> <tTime>

  * include/hbset.h
  * src/vm/set.c
    + added new C function:
         int hb_setUpdateEpoch( int iYear );
      if necessary it converts year respecting _SET_EPOCH settings

  * src/rtl/dates.c
    * use hb_setUpdateEpoch() instead of local code

  * src/rdd/dbf1.c
    ! respect _SET_EPOCH decoding DBF update time from DBF HEADER
      (LUpdate() function).
      It's not Cl*pper compatible anyhow looks that most of tools
      stores only last two digits from the year (just like in the
      DBF documentation) and -1900 trick is not used so it helps
      to decode correct update date.
    * store 'year % 100' instead of 'year - 1900' in DBF header
      when DBF table with VFP signature is used (DB_DBF_VFP).
2015-11-25 15:06:44 +01:00
Przemysław Czerpak
7275392fb6 2015-11-24 09:03 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbapirdd.h
  * src/rdd/wacore.c
    * changed 4-th parameter of hb_rddRequestArea() from HB_BOOL fWait to
      HB_ULONG ulMilliSec
      [INCOMPATIBLE]

  * src/rdd/dbdetach.c
    + accept optionally as 4-th parameter of hb_dbRequest() numeric value
      with timeout in seconds. The previous version using xBase++ compatible
      parameters (logical value <lWait> in 4-th parameter) is still working.

  ; above modifications are based on request and patch sent to harbour-devel
    list by Rolf (many thanks), ref:
    https://groups.google.com/forum/?hl=pl#!topic/harbour-devel/Pu2b1M5VXjU
2015-11-24 09:03:56 +01:00
Przemysław Czerpak
80b10a3a72 2015-11-23 23:24 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rdd/dbf1.c
    + reserve space for DBC name in newly created DBF files with VFP DBF
      signature, Thanks to Nikos Christophi, Jeff Stone and other who
      reported this problem.
    + added RTE when size of DBF header is exceed by "_NullFlags" field

  * src/vm/thread.c
    ! typo in comment
2015-11-23 23:24:30 +01:00
Przemysław Czerpak
0ffb88b947 2015-11-16 15:32 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/thread.c
    ! fixed typo in hb_threadOnceInit() - thanks to Teo
2015-11-16 15:32:53 +01:00
Przemysław Czerpak
7340d7a5cd 2015-11-14 13:19 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/filebuf.c
    ! restored _SET_DEFAULT and _SET_PATH functionality
2015-11-14 13:19:16 +01:00
Przemysław Czerpak
debf33a962 2015-11-13 14:03 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/filebuf.c
    * removed unused after last modification assignment
2015-11-13 14:03:45 +01:00
Przemysław Czerpak
30d0f5bd78 2015-11-13 10:29 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/filebuf.c
    ! fixed file handle sharing in POSIX systems when writeonly mode is used
    ! fixed accessing files in writeonly mode in POSIX systems which use
      fcntl() locks for DENY_* flag emulation.
    ! added for POSIX systems protection against potential race condition in
      MT programs and file open and close operations. Now the whole low level
      open and close operations are covered by mutex. It means that they are
      fully serialized so in case of remote file access (i.e. NFS or SMBFS)
      it may reduce the performance in applications which simultaneously open
      and closes many different files in different threads but its necessary.
      For local file access it should not create noticeable scalability
      problems. In my Linux box Harbour can open and close in MT mode more
      then 250000 files per second.
    % use different mutexes for file open/close and file lock operations to
      not reduce the lock performance by potentially slow open() operation
      in POSIX systems.
    ; NOTE: please remember that DENY_* flag emulation in POSIX systems
            emulates only shared and exclusive modes so if any of
            FO_DENYREAD, FO_DENYWRITE or FO_EXCLUSIVE flag is used then
            it effectively works like FO_EXCLUSIVE in POSIX system and
            is not mandatory for other processes so it blocks only
            other Harbour applications which use Harbour virtual handles
            (RDD code, hb_vf*() functions)

  * src/rtl/filesys.c
    * do not convert exclusive lock to shared one when file is open in
      readonly mode on POSIX system using flock() for DENY_* flag emulation.
      Now HB_USE_BSDLOCKS is enabled only for Linux and it's documented that
      this implementation allow to use shared and exclusive locks regardless of
      file open mode.
    % do not create file name copy in hb_fsExtOpen() when passed parameters
      does not force file name modification
2015-11-13 10:29:25 +01:00
Tamas TEVESZ
a3d292748f 2015-11-05 18:20 UTC+0100 Tamas TEVESZ (ice extreme.hu)
* src/3rd/pcre/Makefile
    ! Fix bundled PCRE build on SunOS;
      tested on Solaris 11u3 x86 with Sun C and gcc
2015-11-05 18:30:43 +01:00
Przemysław Czerpak
9c5f875a7a 2015-11-03 10:44 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/gtwin/gtwin.c
    * added workaround for compilers which do not have MOUSE_HWHEELED macro
      (thanks to Alexey)

  * src/rtl/gtwvt/gtwvt.c
    * do not use LR_DEFAULTSIZE in WinCE builds (synced with Viktor's branch)

  * tests/gtkeys.prg
    * casing
2015-11-03 10:44:29 +01:00
Przemysław Czerpak
ef13a4a651 2015-11-02 17:13 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/gtsln/kbsln.c
  * tests/inkey.prg
    - removed not longer used HB_INKEY_RAW flag

  * tests/inkey.prg
    * test HB_INKEY_EXT keycodes when second parameter contains "E" letter

  * src/rtl/gtwvt/gtwvt.c
    * minor switch order modification
    * accept 127 as unicode character value if system also do that

  * src/rtl/gtwin/gtwin.c
    + added support for Harbour extended key codes
    + added support for mouse middle button
    + added support for some missing key combinations
    ! fixed mouse event processing
    ! fixed ALT + KeyPad NUMs processing - now it's disabled by default
      because current GTWIN supports native ALT + KeyPad NUMs processing
      provided by MS-Windows console. It works when NUMLOCK is ON. If
      someone needs to process it also when NUMLOCK is OFF then he can
      enable it by:
            hb_gtInfo( HB_GTI_KBDALT, .T. )
    ! fixed and simplified workaround for bug in MS-Windows 95 and 98
      consoles which wrongly decode SHIFT + <NUMBER> with CAPSLOCK ON
      for standard US keyboard drivers. Now enabling this workaround by:
         hb_gtInfo( HB_GTI_KBDSPECIAL, .T. )
      should not break input with fixed keyboard drivers.
    ; please test it with different windows versions and national keyboard
      layouts, tests/gtkeys.prg is quite good test program.
2015-11-02 17:13:20 +01:00
Omm
cc30b0f57c 2015-10-29 03:12 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com) 2015-11-02 10:22:46 +02:00
Viktor Szakats
c58fa44650 2015-10-29 11:52 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
* src/rtl/gtwin/gtwin.c
    ! add some HB_GTI_* setting to default GT handler
      (2015-06-08 23:32 UTC+0200 Viktor Szakats)
    + add HB_GTI_WINHANDLE support to GTWIN
      (2015-04-24 19:56 UTC+0200 Viktor Szakats)
    % variable scopes adjusted
    * minor cleanups along the way
      (2015-03-30 13:57 UTC+0200 Viktor Szakats)
    ! move misplaced comment to its proper location
      (2015-03-28 15:45 UTC+0100 Viktor Szakats)
    * simplify compatibility logic around [P]CONSOLE_SCREEN_BUFFER_INFOEX
      it's also an attempt to fix it for some mingw distros
      (f.e. on AppVeyor CI)
      (2015-03-23 03:32 UTC+0100 Viktor Szakats)
    % cleanup a #define spagetti
      (2015-03-23 03:27 UTC+0100 Viktor Szakats)
    ! fixed msvc sanitize warnings
      (2014-07-16 17:37 UTC+0200 Viktor Szakats)
2015-10-29 11:54:33 +01:00
Przemysław Czerpak
05d1a60e67 2015-10-28 17:10 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/gtkeycod.c
    ! fixed typo in CTRL+[UP|DOWN] mapping
    - removed obsolete comment

  * src/rtl/gtos2/gtos2.c
    + catch CTRL+BREAK in OpenWatcom builds
2015-10-28 17:10:11 +01:00
Przemysław Czerpak
9df2e23f8b 2015-10-28 16:02 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/cputime.c
    * disabled unused variables in WinCE builds
2015-10-28 16:02:42 +01:00
Przemysław Czerpak
60b029f057 2015-10-28 15:44 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbgtinfo.ch
    * removed unused HB_GTI_KBD_* macros
    * redefined few other HB_GTI_KBD_* macros to be more HB_KF_* friendly.
      [INCOMPATIBLE]
    ; Warning this modification is not binary compatible so if someone uses
         HB_GTI_KBD_SCROLOCK, HB_GTI_KBD_NUMLOCK, HB_GTI_KBD_CAPSLOCK,
         HB_GTI_KBD_LSHIFT, HB_GTI_KBD_RSHIFT,
         HB_GTI_KBD_LCTRL, HB_GTI_KBD_RCTRL,
         HB_GTI_KBD_LALT, HB_GTI_KBD_RALT,
         HB_GTI_KBD_LWIN, HB_GTI_KBD_RWIN or
         HB_GTI_KBD_MENU
      then he should recompile his code with new hbgtinfo.ch header files.

  * include/hbgtcore.h
  * src/rtl/gtkeycod.c
  * src/rtl/gtdos/gtdos.c
  * src/rtl/gtos2/gtos2.c
  * src/rtl/gtpca/gtpca.c
  * src/rtl/gtstd/gtstd.c
    + added support for Harbour extended keycodes

  * src/rtl/gtos2/gtos2.c
    + added support for HB_GTI_KBDSHIFTS

  * src/rtl/gtdos/gtdos.c
    ! fixed CTRL+C and CTRL+BREAK handling in OpenWatcom builds

  * src/rtl/inkeyapi.c
    ! fixed translation for CTRL + @

  * tests/gtkeys.prg
    + added raw keyboard test - it disables any additional interactions
    * modified Harbour output to show more information about extended
      keycodes
2015-10-28 15:44:35 +01:00
Alexey Myronenko
f7cb8a441d 2015-10-14 00:24 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com) 2015-10-27 15:40:32 +02:00
Przemysław Czerpak
2a743e15e1 2015-10-22 10:13 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/gtwvt/gtwvt.c
  * src/rtl/gtwvt/gtwvt.h
    * merged and simplified code for HB_GTI_ICONFILE and HB_GTI_ICONRES

  * src/rtl/hbcom.c
    * use "COM<n>:" instead of "COM<n>" as serial port name in WinCE
      builds - it's suggested by MSDN but if some of you has different
      experience then please inform me.
2015-10-22 10:13:39 +02:00
Aleksander Czajczynski
1eeec758f6 2015-10-20 15:55 UTC+0200 Aleksander Czajczynski (hb fki.pl)
* src/rtl/hbsocket.c
    ! enable socket type translation for Linux/MIPS, enum order is different
      there - fixes TCP/IP socket binding on such platform
2015-10-20 15:54:12 +02:00
Przemysław Czerpak
530838fcab 2015-10-13 23:05 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbwince.h
  * src/common/hbwince.c
  * src/rtl/cputime.c
    * do not use GetCurrentProcess() in WinCE builds
2015-10-13 23:05:32 +02:00
Przemysław Czerpak
f3fdf11830 2015-10-13 21:22 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/mlcfunc.c
    ! do not access trailing 0 byte in empty strings passed to hb_MLEval()
      (thanks to Abe for information and example illustrating the problem)
    * respect in return value also empty line after last EOL
2015-10-13 21:22:30 +02:00
Przemysław Czerpak
d3c36b080c 2015-10-13 15:08 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/memoedit.prg
    * always returned reformatted string after CTRL+W even if user has not
      made any modifications in edited data - Cl*pper compatible behavior.
2015-10-13 15:08:05 +02:00
Przemysław Czerpak
fe13ece4b4 2015-10-12 17:22 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbsocket.c
    * added support for hb_socketGetIFaces() in DOS wattcp/watt-32 builds
2015-10-12 17:22:29 +02:00
Przemysław Czerpak
3abb37f67e 2015-10-12 13:32 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/mlcfunc.c
    * execute hb_MLEval() codeblock for last empty line if passed string
      ends with EOL
2015-10-12 13:32:24 +02:00
Przemysław Czerpak
f7b7e30c36 2015-10-12 12:56 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbsocket.c
    ! added casting to 2-nd parameter of inet_ntop() as workaround for
      wrong declaration inet_ntop() in MSVC header file
2015-10-12 12:56:41 +02:00
Przemysław Czerpak
d5a11a9abe 2015-10-09 13:38 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbsocket.c
    ! fixed typo (unnecessary parenthesis) in previous commit
    * enabled getnameinfo() in MSVS 2015 builds
    ; thanks to Viktor for the information about above items
2015-10-09 13:38:37 +02:00
Przemysław Czerpak
7d9bd3b96d 2015-10-09 11:13 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbsocket.c
    * enabled inet_pton(), inet_ntop() and getaddrinfo() in MSVS 2015 builds
2015-10-09 11:13:20 +02:00
Przemysław Czerpak
3c35a01400 2015-10-08 22:07 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/gttone.c
    ! fixed typo in my previous commit - thanks to Ronaldo
2015-10-08 22:07:59 +02:00
Przemysław Czerpak
f3de17319b 2015-10-08 19:10 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/gttone.c
    ! disabled IO port access MSVS 2015 builds
2015-10-08 19:10:34 +02:00
Przemysław Czerpak
25d9caffb4 2015-10-08 14:26 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbzsock.c
    ! fixed two typos
2015-10-08 14:26:24 +02:00
Przemysław Czerpak
c14e707b0a 2015-10-06 13:07 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/compiler/compi18n.c
    * reduced variable scope
    * small modification to eliminate false GCC-5.x warning
2015-10-06 13:07:50 +02:00
Przemysław Czerpak
db11c4a1cf 2015-10-06 12:37 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbbfsock.c
    ! typo in comment

  * src/rtl/mlcfunc.c
    * casting

  * src/rtl/memoedit.prg
  * src/rtl/teditor.prg
    * formatting and few modifications to reduce some differences between
      core and Viktor's branch
2015-10-06 12:37:29 +02:00
Przemysław Czerpak
d32d766c98 2015-10-02 16:45 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbapigt.h
  * src/rtl/inkeyapi.c
    + added new C function:
         int hb_inkeyKeyExt( int iKey );
      It extracts function/edit key code value HB_KX_* from Harbour extended
      key code. If passed keycode is not valid extended keycode which points
      to function/edit key then 0 is returned.

  * include/harbour.hbx
  * src/rtl/inkey.c
    + added new PRG function hb_keyExt() - it's wrapper to hb_inkeyKeyExt()

  * include/harbour.hbx
  * src/rtl/mlcfunc.c
    ! restored original Cl*pper behavior in memo line functions,
      test shows that inside MemoEdit() Cl*pper internally uses a little
      bit different rules to format text then in memo line functions,
      It's Cl*pper bug but hard to fix because any differences to Cl*pper
      in this area cause that someone reports them as bug. So I decided
      to leave original Cl*pper behavior for compatibility and add new
      function which can be used in MemoEdit() and related code.
    + added new memo line function:
         hb_MLEval( <cString>, <bCode>, [ <nLineLength>=79 ],
                    [ <nTabSize>=4 ], [ <lWrap>=.T. ],
                    [ <nPos> ], [ @<nRow> ], [ @<nCol> ] ) -> <nLines>
      it formats texts using rules like in Cl*pper MemoEdit() not Cl*pper
      memo lines functions. For each processed line <bCode> is executed
      with 2 parameters: <cLine> and <lSoftCR>. It recognizes and accepts
      any EOLs just like hb_ATokens( <cText>, .T. ) and strips or converts
      soft CRs depending on word wrap mode.

  * src/rtl/teditor.prg
    * Use hb_MLEval() to format text
    % minor optimization

  * src/rtl/memoedit.prg
    * enabled Harbour extended key codes
    * small optimization
    ! fixed ME_BOTTOMRIGHT processing
    ! fixed initial line size calculation

  * src/vm/thread.c
    * removed dymmy code
2015-10-02 16:45:17 +02:00
Przemysław Czerpak
a46d22c9d7 2015-09-30 11:18 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/hvm.c
    ! added missing support for non MT builds in last commit
2015-09-30 11:18:54 +02:00
Przemysław Czerpak
6458e3a963 2015-09-30 10:55 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/harbour.hbx
  * src/vm/hvm.c
    + added internal PRG function to test number of HVM threads and stacks
         __vmCountThreads( [ @<nStacks> ], [ @<nThreads> ] ) -> <nThreads>

  * src/rtl/filesys.c
  * contrib/gtqtc/gtqtc1.cpp
  * contrib/gtwvg/gtwvgd.c
  * contrib/gtwvg/wvgcore.c
  * contrib/hbamf/amfdec.c
  * contrib/xhb/fparse.c
  * contrib/xhb/hbserv.c
  * contrib/xhb/hbxml.c
    * cleaned ;; usage in C code
2015-09-30 10:55:41 +02:00
Przemysław Czerpak
5eca8eab92 2015-09-29 21:24 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/hvm.c
    ! delay locking of main HVM thread stack until HVM is initialized,
      it fixes issue #107
    ! protect access to HB_STACK_TLS_PRELOAD by s_fHVMActive in
      hb_vmLockForce()
2015-09-29 21:24:15 +02:00
Przemysław Czerpak
7c0914cd43 2015-09-25 11:41 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/filebuf.c
    ! removed unnecessary HB_EXPORT attribute

  * contrib/hbwin/oleuuid.c
    ! added missing HB_EXPORT attrinute for OpenWatcom builds

  * contrib/hbcomio/comio.c
  * contrib/hbpipeio/pipeio.c
  * contrib/hbtcpio/tcpio.c
  * src/rtl/hbsockhb.c
    ! cleaned integer types and casting
2015-09-25 11:41:09 +02:00
Przemysław Czerpak
004399c75d 2015-09-24 22:14 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbcom.c
  * src/rtl/gtcrs/gtcrs.c
  * src/rtl/gtpca/gtpca.c
  * src/rtl/gtstd/gtstd.c
  * src/rtl/gttrm/gttrm.c
    * added workaround for bug in some Linux kernels (i.e.
      3.13.0-64-generic Ubuntu) in which select() unconditionally
      accepts terminal device for reading if c_cc[ VMIN ] = 0
      It's very serious problem, i.e. in GTTRM no input is possible
      in such kernels without this workaround.

  * src/rtl/dirscan.prg
    * modified hb_DirScan() and hb_DirRemoveAll() to work with Harbour
      File IO API (hb_vf*() functions)
    + added new PRG function:
         hb_FileDelete( <cFileMask> [, <cAttr> ] ) -> <lResult>
      this function removes files which match given <cFileMask>
      (it may contain path) and returns .T. if at least one file
      was deleted. Optional <cAttr> parameter can be used to include
      system ("S") and hidden ("H") files. If <cAttr> contains "R"
      letter then before deleting READONLY attribute is removed from
      files (it's necessary to remove files with READONLY attribute
      in systems like DOS, MS-Windows or OS2). This function uses
      Harbour File IO API (hb_vf*() functions)
    * remove READONLY attribute from files in hb_DirRemoveAll()

 * include/harbour.hbx
    + added hb_DirRemoveAll() and hb_FileDelete()

  * contrib/hbct/files.c
    ! do not allow to remove empty directories by FileDelete() function
      even if user explicitly sets directory attribute - CT3 compatible fix.
    ! remove READONLY attribute before deleting READONLY files if 2-nd
      parameter of FileDelete() contains READONLY bit

  * src/rtl/filesys.c
    * formatting

  * ChangeLog.txt
    ! typo
2015-09-24 22:14:14 +02:00