Commit Graph

54 Commits

Author SHA1 Message Date
Przemysław Czerpak
118a95c425 2013-09-10 02:09 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/cdpapi.c
    ! added missing static in s_en_buffer declaration
    % faster code for unicode to ASCII CP437 control codes translation
2013-09-10 02:09:46 +02:00
Przemysław Czerpak
e5584850e7 2013-09-09 20:54 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/cdpapi.c
    * use CP437 control codes in translations from unicode to ASCII

  * src/rtl/gtwvt/gtwvt.c
    * added support for key code typed using ALT + <ASCII_VALUE_FROM_KEYPAD>

  * tests/gtkeys.prg
    * added parenthesis to clarify expression order
2013-09-09 20:54:11 +02:00
Przemysław Czerpak
87ddf9c110 2013-09-09 15:54 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/dlmalloc.c
    * use __builtin_clz() and __builtin_ctz() only with GCC 3.4 or newer.
      Problem reported by David Arturo Macias Corona and OS2 GCC3.3.5.

  * README.md
    + added link suggested by David to os2gcc454 from Paul Smedley

  * src/rtl/gtstd/gtstd.c
    + accept keyboard input from redirected file on platforms without
      dedicated code for keyboard support in GTSTD
2013-09-09 15:54:22 +02:00
Przemysław Czerpak
a87963b362 2013-08-28 17:18 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbsocket.c
    ! use sock_errno() instead of errno in OS2 WATCOM builds.
      It fixes few problems with socket code using errno value, i.e.
      hb_socketConnect() with timeout.
2013-08-28 17:18:20 +02:00
Przemysław Czerpak
0b4c999bb5 2013-08-26 15:51 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbsocket.c
    ! fixed hb_socketConnect() with timeout in DOS Watt-32 builds.
      Watt-32 sets socket error to EISCONN when connection is established.
2013-08-26 15:51:57 +02:00
Przemysław Czerpak
ea60542664 2013-08-23 14:25 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/fstemp.c
    ! fixed casting for DOS C++ builds

  * config/dos/watcom.mk
    ! moved CRTL library to the end of linked library list - some
      other libraries may overload some C RTL functions or symbols,
      f.e. error descriptions in WATT-32

  * utils/hbmk2/hbmk2.prg
    ! added hbpmcom library to linked library list in DOS builds
    ! fixed WATT-32 support in DOS builds to work in cross compilation
      environment
    ! link WATT-32 library before C RTL
    ! fixed simultaneous compilation with -jobs=N when N >= 2
      The same hash array (hReplace) was shared between different threads
      and each thread tried to modify it overloading their own parameters.
      It was causing different side effects, i.e. all threads compiled
      the same .c file instead of their own ones or HBMK2 was crashing
      due to memory corruption.
    * always join all started threads
2013-08-23 14:25:14 +02:00
Przemysław Czerpak
46d64612b5 2013-08-22 19:06 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbct/getsecrt.prg
    ! applied Clipper compatibility fix to GetSecret() by Pavel Tsarenko

  * src/common/hbdate.c
    * removed explicit _BSD_SOURCE definition - it was confusing our
      code used to detect localtime_r() support and is not necessary
      if we do not use extended fields of tm structure

  * src/rtl/mtran.c
    * updated to show strict Clipper compatible behavior - Clipper
      ignores 3-rd cSoftCR parameter if 2-nd one cHardCR is not given
      (strict compatibility is covered by HB_CLP_STRICT macro and
      disabled by default - undocumented feature which may confuse
      users)
    % minor optimization
2013-08-22 19:06:06 +02:00
Przemysław Czerpak
e8c7f2067d 2013-07-18 02:24 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbdate.h
  * src/common/hbdate.c
    + added new C functions:
         double hb_timeLocalToUTC( double dTimeStamp );
         long hb_timeStampUTCOffset( int iYear, int iMonth, int iDay,
                                     int iHour, int iMinutes, int iSeconds );
    ; warning: some C RTLs may not correctly detect Summer time for all past
               dates in few countries.

  * include/harbour.hbx
  * src/rtl/dateshb.c
    + added new PRG function:
         hb_TSToUTC( <tsLocal> ) -> <tsUTC>
    + added support for optional timestamp parameter in hb_UTCOffset()
      function, current syntax is:
         hb_UTCOffset( [ <tsLocal> ] ) -> <nSeconds>

  * contrib/hbtip/hbtip.hbx
  * contrib/hbtip/utils.c
    + added new PRG function:
         tip_FileNameMimeType( <cFileName> ) -> <cMimeType>
      It's a wrapper to old C function s_findFileMimeType()
      TODO: replace few independent mimetype functions by single one.
    ! fixed tip_FileMimeType() to not call hb_fsClose() or any other FS
      function with wrong handler.
    ! fixed tip_TimeStamp() using hb_timeStampUTCOffset() instead of
      hb_timeUTCOffset() to correctly calculate UTC offset for dates
      different then current one.
    ! decode time passed as numeric second() value in 2-nd parameter of
      tip_TimeStamp() only when the 1-st one contains pure date value.
2013-07-18 02:24:58 +02:00
Przemysław Czerpak
084ab0bbe2 2013-07-08 23:34 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/debug/dbgentry.c
    + added protection against wrong parameters passed to __dbgDelBreak()

  * src/debug/debugger.prg
    + implemented display history for command window.
      This modification also fixes clearing command window when focus is
      changed.
    + added support for new commands:
         DELETE ALL BP
         DELETE BP <nNumber>
         LIST BP
    * replicated Clipper compatible command line shortcuts
    ! send :RefreshAll instead of :RefreshCurrent to source code window
      when break point changed
    ; TODO: add support for window resizing and repositioning. Commands
            like LIST BP are in practice unusable in 3 line command window.

  * src/rtl/console.c
    % minor optimization
2013-07-08 23:34:20 +02:00
Przemysław Czerpak
b2dd9d5923 2013-07-08 17:09 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/debug/dbgtmenu.prg
    ! allow to chose current menu item by its hotkey

  * src/debug/dbgtmitm.prg
    % eliminated dummy hb_DispOutAtBox() for not marked options

  * src/debug/debugger.prg
    ! keep RunAtStartup flag synced with menu
    ! fixed options decoding from init.cld file.
      Thanks to Franček Prijatelj for locating the problem though fix
      should be a little bit different.

  * src/debug/tbrwtext.prg
    ! respect LineNumbers on/off setting

  * src/rtl/console.c
    ! call hb_gtFlush() at the end of hb_DispOutAtBox() - it fixes
      different side effects in code using hb_DispOutAtBox().
2013-07-08 17:09:36 +02:00
Przemysław Czerpak
6153da2b05 2013-07-05 14:12 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/debug/dbgentry.c
    ! added missing casting

  * src/debug/debugger.prg
    + show in call stack references to code compiled without debug info

  * src/rtl/itemseri.c
    * ignore HB_HASH_RESORT flag during hash serialization
2013-07-05 14:12:46 +02:00
Przemysław Czerpak
48137e6a61 2013-07-04 18:09 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/debug/dbgtwin.prg
  * src/debug/debugger.prg
    ! use explicitly INKEY mask in INKEY() calls to avoid interactions
      with user code

  * src/debug/debugger.prg
  * src/debug/tbrwtext.prg
    % removed code used for internal breakpoints handling - it was
      redundant and all necessary information can be easy and fast
      accessed directly from dbgentry.c. Current code is smaller,
      faster and we do not have to worry about keeping break point
      information synchronized between C level debugger internals,
      HBDebugger object and HBBrwText object.
    ! changed source code window navigation key to work like in
      Clipper debugger
    ! changed source lines displaying to work like in Clipper debugger -
      with HOME/END scrolling code horizontally it's not such important
      to always see line numbers
    ! redirect few missing K_CTRL_* keys to active window it fixes key
      navigation in some of them
    ! redirect K_ENTER to command window if command is not empty just
      like in Clipper debugger

  * src/rtl/inkeyapi.c
    ! do not convert ASCII 127 to character in hb_inkeyKeyString()
      and HB_KEYCHAR()
2013-07-04 18:09:47 +02:00
Przemysław Czerpak
ebcbbfd518 2013-07-04 05:33 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/debug/dbgentry.c
    + added new PRG functions:
         __dbgIsBreak( <pDbg>, <cModule>, <nLine> ) -> <nPos>
         __dbgGetBreakPoints( <pDbg> ) -> <aBreakPoints>

  * src/debug/debugger.prg
    - removed old and long time unused PRG function __dbgAltDEntry()

  * src/rtl/hbproces.c
    * changed returned status when execvp() fails, -1 should give
      maximal exit code on given platform (i.e. 255)
2013-07-04 05:33:22 +02:00
Przemysław Czerpak
d55d57c622 2013-06-10 16:59 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/gtwvt/gtwvt.c
    * removed not longer user K_Ctrl[] array

  * contrib/gtqtc/gtqtc1.cpp
    ! fixed MT protection to work with recursive calls
      (such call can appear after ALT+ENTER)

  * doc/xhb-diff.txt
    * updated "HASH ARRAYS" paragraph

  * config/lang2po.hb
  * contrib/hbamf/amfdec.c
  * contrib/hbamf/amfenc.c
  * contrib/hbexpat/tests/tohash.prg
  * contrib/hbmxml/core.c
  * contrib/hbnetio/utils/hbnetio/hbnetio.prg
  * contrib/hbnetio/utils/hbnetio/netiomgm.hb
  * contrib/hbwin/hbolesrv.c
  * contrib/hbwin/tests/olesrv1.prg
  * contrib/hbwin/tests/olesrv2.prg
  * contrib/make.hb
  * contrib/xhb/xhbhasha.c
  * src/rtl/hbdoc.prg
  * src/rtl/hbini.prg
  * src/rtl/hbjson.c
  * tests/big5_gen.prg
  * tests/uc16_gen.prg
  * utils/hbmk2/hbmk2.prg
    * removed keeporder setting - now it's default for newly
      created hash arrays

  * contrib/gtwvg/gtwvg.hbx
    * added missing functions
2013-06-10 16:59:13 +02:00
Przemysław Czerpak
9b656834bc 2013-06-07 11:38 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/itemseri.c
    ! force resorting deserialized hash arrays

  * src/rtl/tgetlist.prg
    ! applied fix reported by Tony: typo in INS msg
2013-06-07 11:38:35 +02:00
Przemysław Czerpak
ad65425d8a 2013-06-05 11:01 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbgtcore.c
    ! fix for recent modification
2013-06-05 11:01:40 +02:00
Przemysław Czerpak
09298f8f31 2013-06-05 10:37 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/gtwvt/gtwvt.c
    ! added workaround for AltGR and German keyboard

  * src/rtl/inkeyapi.c
    ! added missing 'static' in function declaration

  * src/rtl/hbgtcore.c
    ! added workarounds for HB_GTI_COMPAT_BUFFER switched to .F. by
      default.

  * tests/gtkeys.prg
    * switched to UTF8 CP by default
    + extended keycode information in Harbour
2013-06-05 10:37:34 +02:00
Przemysław Czerpak
8b963cf79d 2013-06-04 14:20 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/gtqtc/gtqtc1.cpp
    * added workaround for missing MT synchronization in QT for XLIB
      QT was designed to use screen widgets only in main thread so
      it's only workaround which helps but I cannot guaranti

  * contrib/hbmzip/mzip.c
    * workaround for wrong st_mtime type in struct stat on android

  * src/rtl/hbsocket.c
    * do not check if IPPROTO_IP is defined, on some platforms like
      android it's only enum type. Warning if it exploits some problems
      on some seldom used platforms/compilers then please report it.

  * src/vm/hvm.c
    * minor

  * package/mpkg_ver.sh
    * do not use bash extensions

  * package/harbour-wce.spec.in
  * package/harbour-win.spec.in
  * package/harbour.spec
  * package/mpkg_rpm.sh
  * package/mpkg_rpm_wce.sh
  * package/mpkg_rpm_win.sh
    * removed bash from dependencies list
2013-06-04 14:20:50 +02:00
Przemysław Czerpak
d900dc5b1c 2013-06-03 16:45 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbtoken.c
    + added support for passing token parser parameters as bit field number.
      The goal is to replace last to parameters with single bit field which
      allows to set many different parsing aspects instead of adding many
      new parameters.
    + added support for reverted apostrophes quoting: `a b c`
    ; TODO: add constant values to control parser in token functions

  * utils/hbmk2/hbmk2.prg
    ! respect reverted apostrophes quoting in options read from .hbp/.hbm
      files.
    ! do not ignore tool parameters passed in -*flags= hbmk2 params if
      they do not start with '-'. It resolves problems with shells which
      need special quoting to pass parameters, i.e. with both modifications
      it's possible to use in hbp files dynamic parameters encapsulated in
      different forms, depending on used platform, shell and parameter type,
      i.e. parameters are passed as set of separated arguments:
         -cflag=`config-tool1`
      or paramters are passed as single argument:
         -cflag="`config-tool2`"
      or parameters are passed in file which name shows config-tool3:
         -cflag="@`config-tool3`"
      In short words now things like:
         -cflag=`pkg-config --cflags gtk+-3.0`
      will work correctly with .hbp files
2013-06-03 16:45:25 +02:00
Tamas TEVESZ
4469d28b70 2013-05-16 22:34 UTC+0200 Tamas TEVESZ (ice extreme.hu)
* contrib/3rd/sqlite3/sqlite3.hbp
    * Disable on Minix (no MAP_SHARED which is needed by SQLite WAL);
      (Hopefully a temporary measure.)
  * src/rtl/filesys.c
    ! Disable hb_fsPipeUnblock() on Minix;
      makes hb_processRun() work. Thanks to Przemek for the idea.
2013-05-16 22:39:24 +02:00
Przemysław Czerpak
ad8fcef5ae 2013-05-15 19:54 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/pp/hbpp.c
    ! fixed ChangeLog file name detection broken after adding .txt
      extension.

  * src/rtl/hbproces.c
    + added support merged stdout and stderr output in hb_fsProcessRun()

  * src/rtl/hbprocfn.c
    + added support merged stdout and stderr output in hb_processRun()
      PRG function. To extract merged stdin and stdout application output
      it's enough to pass by reference in 3-rd and 4-th parameters the same
      variable, i.e.:
         nResult := hb_processRun( cCommand,, @cOutErr, @cOutErr )

  * utils/hbmk2/hbmk2.prg
    ! use hb_processRun() intead of hb_processOpen() to extract merged
      stdout and stderr output. It fixes all builds in which hb_processOpen()
      does not exists due to some system limitations like missing pipes,
      i.e. DOS builds.

  * src/vm/fm.c
    ! fixed typo in DOS builds

  * src/rtl/gtwin/gtwin.c
    ! ignore mouse position reported in mouse wheel events which use
      screen based coordinates instead of console window ones.
2013-05-15 19:54:49 +02:00
Przemysław Czerpak
1062ed644b 2013-05-10 08:28 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbgtinfo.ch
    + added HB_GTI_REDRAWMAX
      It sets maximum number of unchanged neighboring chars in redrawn
      line. It may help to optimize screen updates in some GTs.

  * include/hbgtcore.h
  * src/rtl/hbgtcore.c
  * contrib/hbct/ctwin.c
    + respect HB_GTI_REDRAWMAX in default REDRAWDIFF() GT methods.

  * contrib/gtqtc/gtqtc1.cpp
    ! added protection against font resizing for degenerated console
      window size.
    % set HB_GTI_REDRAWMAX to 1

  * src/rtl/gtwvt/gtwvt.c
    ! translate screen base mouse wheel cords to window based ones.
    % set HB_GTI_REDRAWMAX to 1

  * src/rtl/gttrm/gttrm.c
    % set HB_GTI_REDRAWMAX to 8

  * src/rtl/gtwin/gtwin.c
    % set HB_GTI_REDRAWMAX to 4
2013-05-10 08:28:56 +02:00
Przemysław Czerpak
79539c96c2 2013-05-08 09:57 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/gtqtc/gtqtc1.cpp
    * minor: removed {}

  * src/rtl/gtwin/gtwin.c
    * reenabled code to get/set palette in GTWIN
    ! fixed console window resizing when palette is set
    ! do not change default console palette at application startup.
      It's Clipper compatible behavior which allows to inherit colors
      set by some initialization program executed before or by some
      parent processes which control console environment, i.e. other
      Harbour GTWIN applications.
    % reset palette on exit only if it was changed.
    + return predefined MS-Windows console palette also in systems where
      GetConsoleScreenBufferInfoEx() is not available.

  * src/rtl/gtwvt/gtwvt.c
    ! use predefined BLACK color for building box character bitmaps
      instead of palette color[ 0 ] because user can redefine palette.
2013-05-08 09:57:51 +02:00
Przemysław Czerpak
628ca90377 2013-04-26 14:31 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
+ contrib/xhb/xhbinkey.ch
  + contrib/xhb/xhbkey.c
  * contrib/xhb/xhb.hbp
  * contrib/xhb/xhb.hbx
    + added support for xHarbour compatible extended Inkey() key codes
      This functionality works with GTs which can operate on Harbour
      extended key codes which are translated at runtime to xHarbour
      extended keys (HB_EXT_INKEY).
    + added new PRG function:
         xhb_Inkey( [ <nDelay> ] [ , <nKeyMask> ] ) -> <nKey>
      which works like Inkey() but returns xHarbour extended key codes.
    + added new PRG function:
         xhb_KeyTrans( <nExtKey> ) -> <nXhbKey>
      which translates Harbour extended key code to xHarbour one.

  * include/hbapigt.h
  * src/rtl/inkeyapi.c
    + added new C function:
         int hb_inkeyKeyVal( int iKey );
      It extract key/character code from Harbour extended key code

  * include/harbour.hbx
  * src/rtl/inkey.c
    + added new PRG function:
         hb_keyVal( <nExtKey> ) -> <nKeyVal> | <nCharVal>
2013-04-26 14:31:33 +02:00
Przemysław Czerpak
b2ac52fc11 2013-04-25 12:18 UTC+0200 Przemysław Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbgtcore.c
    ! updated INKEYPOOL() code to respect extended key code in ALT+C and
      ALT+D detection
2013-04-25 12:17:26 +02:00
Przemysław Czerpak
b9a30a4577 2013-03-05 11:53 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbapi.h
  * include/hbapigt.h
  * include/hbvm.h
  * src/rtl/inkeyapi.c
  * src/vm/cmdarg.c
  * src/vm/hvm.c
    * replaced hb_cmdargProcessVM() with hb_cmdargProcess() and removed
      unused for long time custom user cancel key functionality.
    - removed dummy hb_inkeySetCancelKeys() C function.
    - removed not used for long time HVM C functions and macros:
         hb_vmFlagEnabled(), hb_vmFlagSet(), hb_vmFlagClear(),
         HB_VMFLAG_HARBOUR, HB_VMFLAG_ARRSTR

  * include/hbgtinfo.ch
    + added new HB_GTI_* actions:
         HB_GTI_WINHANDLE   - Get console window low level handle
         HB_GTI_MOUSEPOS_XY - Get mouse position in pixels
         HB_GTI_DISPIMAGE   - Display image with given name

  * include/hbapigt.h
  * src/rtl/inkeyapi.c
    + added new C function: int hb_inkeyKeyMod( int iKey )
    + added code for translation from extended key codes to
      standard Clipper ones

  * include/harbour.hbx
  * src/rtl/inkey.c
    + added new PRG function hb_keyMod( <nExtKey> ) -> <nModifiers>
      It extract keyboard modifiers (HB_KF_*) from extended key code.

  * include/hbgtcore.h
  * src/rtl/hbgtcore.c
    + added new macros for generating extended key codes with keyboard
      modifiers for ASCII and UNICODE characters
    % strip repeated extended key codes for mouse move
    ! use standard key codes in extended ALERT() GT method

  * include/inkey.ch
    + added key modifiers/flags for extended key codes: HB_KF_*
    + added extended key codes: HB_KX_*
    - removed unused HB_K_MULTICODE macro

  * src/rtl/gttrm/gttrm.c
    * replaced old keyboard and mouse code with new one using
      extended key codes for keyboard and mouse
    + added support for keyboard modifiers in GPM events
    + added support for keyboard modifiers in terminal mouse events

  * src/rtl/gtwvt/gtwvt.h
  * src/rtl/gtwvt/gtwvt.c
    ! invert selection region in WinCE builds
    ! fixed selection in fullscreen or maximized modes with margins
    * do not add EOL to one line selections
    + added support for painting box drawing characters.
      This mode can be enabled by:
         hb_gtInfo( HB_GTI_FONTATTRIBUTE, HB_GTI_FONTA_DRAWBOX )
      and it causes that GTWVT draws all box characters as pixmap
      regardles of used font.
      So far this functionality existed only in GTXWC.
    + added support for HB_GTI_FONTA_FIXMETRIC and HB_GTI_FONTA_CLRBKG
      So far this functionality existed only in GTXWC.
    + added support for HB_GTI_WINHANDLE
    ! do not add EOL at the end of one line selection

  * src/rtl/gtxwc/gtxwc.h
  * src/rtl/gtxwc/gtxwc.c
    * replaced old keyboard and mouse code with new one using
      extended key codes for keyboard and mouse
    * renamed HB_GTXWC_* box drawing macros to HB_BOXCH_* ones
    * do not add EOL to one line selections
    ! fixed few keypad keycodes
    * use cursor blinking rate HB_GTI_CURSORBLINKRATE for whole
      show/hide period not only half of them. If someone use this
      GTI action in his code then now he should double passed
      value. [incompatible]
    ! fixed return value for HB_GTI_SETPOS_ROWCOL
    * few minor cleanups

  * tests/gtkeys.prg
    * replaced old keyboard and mouse code with new one using
      extended key codes for keyboard and mouse
    + added description for some key codes
    + added some initial HB_GTI_* actions
    + change cursor size by K_INS
    + display terminal size after HB_K_RESIZE
    + display mouse position after mouse key codes
    ! display all characters created by hb_keyChar()
    ! fixed formatting

  * src/rdd/dbf1.c
    * added more general protection against GPF in not fully
      initialized workarea
2013-04-22 15:38:35 +02:00
Przemysław Czerpak
877ddb4a06 2013-04-18 14:58 UTC+0200 Przemysław Czerpak (druzus/at/poczta.onet.pl)
* .gitignore
    ! removed executable file permission

  * package/mpkg_src.sh
    ! added executable file permission

  * contrib/hbct/screen2.c
    % use STR API for parameters instead of using local conversions

  * contrib/hbct/token1.c
    % small simplification

  * contrib/hbnetio/netiosrv.c
    + respect timeout parameter also in send operation

  * contrib/make.hb
    ! moved project name normalization and directory verification to
      AddProject() function. It fixes HB_BUILD_ADDONS envvar functionality.

  * doc/xhb-diff.txt
    + added new paragraph: DECLARATION AND INITIALIZATION OF VARIABLES

  * src/rtl/hbcom.c
    * added 3-rd parameter to TIOCEXCL and TIOCNXCL ioctl() codes
      to pacify valgrind warnings

  * include/hbexpra.c
    ! fixed compilation with HB_USE_ENUM_FUNCTIONS macro

  * include/hbapicls.h
  * include/hbcompdf.h
  * include/hbexpra.c
  * src/compiler/harbour.y
  * src/vm/classes.c
    + added support for :__enumIsFirst() iterator message. It's opposite
      to recently added :__enumIsLast()
    + added support for overloading :__enumIsFirst() and :__enumIsLast()
      functionality in custom FOR EACH implementations

  * include/hbcompdf.h
  * include/hbexpra.c
  * src/compiler/harbour.y
    + added support for reverting :__enumIsFirst() and :__enumIsLast()
      messages in descendant FOR EACH loops. It's disabled now by 2 #if 0
      but I think it should be discussed. Should we keep it enable it?
      The answer is not trivial when FOR EACH is used to iterate some
      objects. In general such names are confusing.

  * src/compiler/harbour.yyc
  * src/compiler/harbour.yyh
    * regenerated using bison 2.5

  * tests/foreach.prg
    + added :__enumIsFirst() to test code

  * tests/foreach2.prg
    ! typo in comment
2013-04-18 14:58:40 +02:00
Viktor Szakats
e88a4b1f20 2013-04-06 19:57 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbct/trig.c
    ! another fix

  * contrib/hbwin/wapi_winuser.c
    * deleted comment in some foreign programming language

  * src/rtl/hbmd5.c
    * cleaned comment
2013-04-06 19:58:02 +02:00
Viktor Szakats
c0c7172788 another typo in prev 2013-04-06 18:25:21 +02:00
Viktor Szakats
b3d0f0d589 2013-04-06 16:17 UTC+0200 Viktor Szakats (harbour syenar.net)
* src/vm/dynsym.c
  * src/vm/eval.c
    ! fixed some code messed up by case fixup
      (rather inexplicable yet)

  * src/rtl/hbinet.c
  * src/rtl/hbmd5.c
  * src/vm/eval.c
    ! typos in comments
2013-04-06 16:19:00 +02:00
Viktor Szakats
b414d00664 2013-04-05 16:24 UTC+0200 Viktor Szakats (harbour syenar.net)
* bin/check.hb
  * tests/fixcase.hb
    + some exceptions for casing
    * deleted one file exception (a readme)

  * contrib/gtwvg/gtwvgd.c
  * contrib/gtwvg/wvgcore.c
  * contrib/gtwvg/wvgcuig.c
  * contrib/gtwvg/wvgwin.c
  * contrib/gtwvg/wvgwing.c
  * contrib/hbamf/amfenc.c
  * contrib/hbbz2/core.c
  * contrib/hbct/ctcom1.c
  * contrib/hbct/ctcom2.c
  * contrib/hbct/ctnet.c
  * contrib/hbct/ctstr.c
  * contrib/hbct/ctwfunc.c
  * contrib/hbct/ctwin.c
  * contrib/hbct/disk.c
  * contrib/hbct/finan.c
  * contrib/hbct/screen2.c
  * contrib/hbct/token1.c
  * contrib/hbct/token2.c
  * contrib/hbct/trig.c
  * contrib/hbgd/gdwrp.c
  * contrib/hbhpdf/image.c
  * contrib/hbmisc/irm.c
  * contrib/hbnetio/netiocli.c
  * contrib/hbnetio/netiosrv.c
  * contrib/hbnetio/readme.txt
  * contrib/hbnf/dispc.c
  * contrib/hbnf/ftattr.c
  * contrib/hbnf/origin.c
  * contrib/hbssl/ssl.c
  * contrib/hbwin/wapi_commctrl.c
  * contrib/hbwin/wapi_winuser.c
  * contrib/hbwin/win_dlg.c
  * contrib/hbwin/win_prn2.c
  * contrib/hbwin/win_shell.c
  * contrib/rddads/ads1.c
  * contrib/rddads/adsfunc.c
  * contrib/xhb/fparse.c
  * contrib/xhb/hbcrypt.c
  * contrib/xhb/hbserv.c
  * contrib/xhb/hbxml.c
  * contrib/xhb/txtline.c
  * contrib/xhb/xhbarr.c
  * contrib/xhb/xhbarrex.c
  * extras/gfspell/spellc.c
  * extras/gtwvw/gtwvwd.c
  * extras/gtwvw/hbgtwvw.h
  * extras/gtwvw/wvwcheck.c
  * extras/gtwvw/wvwdraw.c
  * extras/gtwvw/wvwedit.c
  * extras/gtwvw/wvwfuncs.c
  * extras/gtwvw/wvwmenu.c
  * extras/gtwvw/wvwpush.c
  * extras/gtwvw/wvwstbar.c
  * extras/gtwvw/wvwtbar.c
  * include/hbapi.h
  * include/hbapirdd.h
  * include/hbdefs.h
  * include/hbexpra.c
  * include/hbexprb.c
  * include/hbpcode.h
  * include/hbpp.h
  * include/hbrddcdx.h
  * include/hbrddnsx.h
  * src/codepage/cp_utf8.c
  * src/common/expropt1.c
  * src/common/expropt2.c
  * src/compiler/cmdcheck.c
  * src/compiler/genc.c
  * src/compiler/gencc.c
  * src/compiler/hbfunchk.c
  * src/compiler/hbopt.c
  * src/pp/pplib.c
  * src/rdd/dbcmd.c
  * src/rdd/dbf1.c
  * src/rdd/dbfcdx/dbfcdx1.c
  * src/rdd/hbsix/sxcompr.c
  * src/rdd/hbsix/sxord.c
  * src/rdd/hsx/hsx.c
  * src/rtl/chruni.c
  * src/rtl/cputime.c
  * src/rtl/dateshb.c
  * src/rtl/filehb.c
  * src/rtl/filesys.c
  * src/rtl/gtsln/gtsln.c
  * src/rtl/gtwvt/gtwvt.c
  * src/rtl/gtxwc/gtxwc.c
  * src/rtl/hbgtcore.c
  * src/rtl/hbinet.c
  * src/rtl/hblpphb.c
  * src/rtl/hbmd5.c
  * src/rtl/hbproces.c
  * src/rtl/hbsocket.c
  * src/rtl/hbsockhb.c
  * src/rtl/hbtoken.c
  * src/rtl/hbzlib.c
  * src/rtl/hbzlibgz.c
  * src/rtl/langapi.c
  * src/rtl/mlcfunc.c
  * src/rtl/philes.c
  * src/rtl/soundex.c
  * src/rtl/strzero.c
  * src/rtl/transfrm.c
  * src/vm/arrayshb.c
  * src/vm/classes.c
  * src/vm/dynsym.c
  * src/vm/eval.c
  * src/vm/garbage.c
  * src/vm/hvm.c
  * src/vm/macro.c
  * src/vm/memvars.c
  * src/vm/runner.c
  * src/vm/set.c
  * src/vm/thread.c
    * run tests/fixcase.hb now that it's able to fixup casing
      inside all comments
2013-04-05 16:27:40 +02:00
Viktor Szakats
a08811f554 2013-04-05 14:57 UTC+0200 Viktor Szakats (harbour syenar.net)
* bin/check.hb
    ! made it work regardless of cwd
    + added --fixup option to fix/process files
    + extended detection of SVN IDs based on 'ident' option
      in .gitattributes. Now also warn if missing.
    + added detection of C++ style comments in C files
    + ported Harbour function name casing fixup code, so
      it can now be done automatically before commit

  * bin/commit.hb
    * minor change in option name

  * contrib/gtwvg/wvgwin.c
  * contrib/gtwvg/wvgwing.c
    ! deleted large amount of MSDN documentation in C++ comments
    ! fixed C++ comments

  * src/pp/ppcore.c
    * avoid false C++ comment detection in deffed out
      non-code section

  * src/rtl/gttrm/gttrm.c
  * contrib/rddads/adsx.c
  * contrib/xhb/filestat.c
    ! fixed C++ comment

  * contrib/hbrun/hbrun.hbp
  * utils/hbmk2/hbmk2.hbp
    + better comment

  * extras/gtwvw/hbgtwvw.h
  * extras/gtwvw/*.c
    ! fixed C++ comments
2013-04-05 15:03:38 +02:00
Viktor Szakats
38310bc781 2013-04-05 02:57 UTC+0200 Viktor Szakats (harbour syenar.net)
* bin/check.hb
    ! fixed to use local implementation instead of hb_DirScan()
      which has known bug of missing extensionless files on win.
      (due to hb_FileMatch() problem)
    + added support to optimize images and uncrustify C source
      before upload (inactive yet)
    + added necessary exceptions now that extensionless files
      properly found
    + checks for filenames without extensions
    + checks for filenames with extensions not in .gitattributes

  * bin/commit.hb
    + show helpful advice when pre-commit hook check fails
    ! fixed to propely pick filenames that result from rename operations (for check)
    ! fixed to not pick filenames of deleted files (for check)

  * config/lang.hb
  * doc/en/lang.txt
  * include/hblang.hbx
  * src/lang/Makefile
  * src/lang/l_zh_tra.c -> src/lang/l_zh.c
  * src/rtl/langcomp.prg
    * Language renamed: zh_tra -> zh (in sync with recently laid rules)
      The 'REQUEST HB_LANG_*' value become INCOMPATIBLE compared
      to previous dev versions

  * src/rtl/cdpdet.prg
    + added 'zh' country code to codepage detection

  * contrib/make.hb
  * contrib/hbplist -> contrib/hbplist.txt
    * renamed to have an extension

  * contrib/hbrun/doc/_GENERATED_ -> contrib/hbrun/doc/_autogen.txt
  * utils/hbmk2/doc/_GENERATED_ -> utils/hbmk2/doc/_autogen.txt
    * renamed to have names fitting naming rules
    + added warning message inside

  - extras/httpsrv/logs/empty
    - deleted unnecessary file with non-compliant filename

  - tests/stripeol.hb
    % deleted, now similar functionality is implemented in bin/check.hb

  * .gitattributes
    ! added missing .log and .ucf

  * contrib/hbtinymt/3rd/tinymt/tinymt.hbp
    ! deleted SVN ID

  * debian/copyright
    ! synced with COPYING.txt

  * debian/postinst
  * debian/postrm
    ! deleted multiple EOL at EOF
2013-04-05 03:02:47 +02:00
Viktor Szakats
26f328e4e2 2013-04-03 12:13 UTC+0200 Viktor Szakats (harbour syenar.net)
- src/lang/a/*.c
  - src/lang/l_en.c
    - deleted mistakenly autocommitted files

  * config/lang.hb
    ! exclude base lang from automatically formed list of core languages

  * src/rtl/hbi18n2.prg
    * minor code clarification (but worse performance)
2013-04-03 12:14:45 +02:00
Viktor Szakats
f9d38b5ef5 2013-04-03 03:15 UTC+0200 Viktor Szakats (harbour syenar.net)
* bin/check.hb
    ! fix to filename filter (needs large cleanup)

  * config/lang.hb
  * include/hblang.hbx
  * src/lang/Makefile
  * src/rtl/langcomp.prg
  + src/lang/l_pt_br.c
    + added 'pt_br' language
2013-04-03 03:16:49 +02:00
Viktor Szakats
9493097ab2 2013-04-03 00:19 UTC+0200 Viktor Szakats (harbour syenar.net)
* include/hblang.hbx
  * src/lang/Makefile
  * src/rtl/langcomp.prg
  + src/lang/l_es_419.c
    + added 'es_419' - Spanish (Latin America) to Harbour
      core languages
    ! fixed typo in language mapping of 'sr-sp-cyrl' to 'sr_cyr'
    + accept 'zh' for Chinese (Traditional)
2013-04-03 00:22:33 +02:00
Viktor Szakats
c0d88c42dc 2013-04-02 22:09 UTC+0200 Viktor Szakats (harbour syenar.net)
* bin/check.hb
    + added file fixup feature (not yet activated)
    + refined detection of some problems

  * src/lang/l_de.c
  * src/lang/l_hu.c
  * src/lang/l_nl.c
  * src/lang/l_pl.c
    ! manual whitepsace/punctuation corrections

  * src/lang/l_el.c
    + manually applied translation from Transifex by Pete_wg
    * some manual whitepsace/punctuation corrections

  * src/rtl/langapi.c
    - deleted reference of unused and not needed RFC ID in language modules
    ; TODO: delete it from the language module string list

  * src/rtl/tgetlist.prg
    + handle the translation error where _GET_INSERT_OFF and _GET_INSERT_ON
      length doesn't match. Draw spaces instead of _GET_INSERT_OFF in that case

  * tests/lang2po.hb
  * tests/po2lang.hb
    + finalized two way .po <-> l_*.c file conversion
      (copyrights and RFC ID will be lost)
2013-04-02 22:14:28 +02:00
Viktor Szakats
b9d69aa3f5 2013-04-02 17:49 UTC+0200 Viktor Szakats (harbour syenar.net)
+ bin/check.hb
    + new source verifier. Able to all documented (and more)
      required text file and filename properties.

  * bin/commit.hb
    + added feature to verify all files to be committed to
      conform with certain naming and text file content rules
    + added some more feedback

  * config/postinst.hb
    + include commit.hb and check.hb in 'install'

  * include/extend.h
  * contrib/hbcairo/paths.c
  * contrib/hbcairo/png.c
  * contrib/hbcairo/util.c
  * contrib/hbtpathy/readme.txt
  * tests/harbour.ini
  * tests/parseins.ini
    ! multiple EOL at EOF

  * contrib/hbhpdf/tests/files/cp932.txt
  * contrib/hbhpdf/tests/files/cp936.txt
  * contrib/hbhpdf/tests/files/elic_jp.txt
    ! line ending spaces
    ! missing EOL at EOF

  * contrib/hbhttpd/tests/tpl/app/account/edit.tpl
  * contrib/hbhttpd/tests/tpl/app/login.tpl
  * contrib/hbhttpd/tests/tpl/app/logout.tpl
  * contrib/hbhttpd/tests/tpl/app/main.tpl
  * contrib/hbhttpd/tests/tpl/app/register.tpl
  * lib/3rd/win/bcc/unicows_license.txt
  * lib/3rd/win/mingw/libunicows_license.txt
    ! missing EOL at EOF

  * COPYING.txt
  * src/rtl/gtcrs/hb-charmap.def
  * tests/big5_gen.prg
    ! tabs

  * extras/gfspell/spell.prg
  * src/rtl/gtwin/gtwin.c
    ! ASCII 127

  * src/codepage/cp_tpl.c
    ! converted to UTF-8 (just guessing what the original CP was)

  * src/pp/hbpp.c
    ! do not generate SVN header in hbverbld.h
    + avoid SVN header string in source as is to miss matched
      in source verifier

  * src/vm/extrap.c
    ! do not generate whitespace at EOL in output

  * tests/lang2po.hb
  * tests/po2lang.hb
    + minor improvements
    ! fixed to generate consistent EOL

  * bin/3rdpatch.hb
    * newline at top deleted

  * extras/hbdoc/hbdoc.hbp
  * extras/hbdoc/hbdoc.prg
  * extras/hbdoc/_tmplates.prg -> extras/hbdoc/_tmplate.prg
  * contrib/hbcairo/tests/lightning.prg -> contrib/hbcairo/tests/lightnin.prg
    ! long filename

  * .gitattributes
  * extras/guestbk/guestbk.prg
  * extras/guestbk/guestbk.txt
  * extras/guestbk/guestbk.htm -> extras/guestbk/guestbk.html
    * deleted .htm file, now all HTML has extension .html
    * .exe references in doc made OS neutral
    ; Can only be used on non-MS-DOS systems, so it's okay
2013-04-02 17:50:36 +02:00
Viktor Szakats
783f45656d 2013-04-02 02:43 UTC+0200 Viktor Szakats (harbour syenar.net)
* src/rtl/hbi18n2.prg
    ! __i18n_potArrayClean() to evaluate transformation
      codeblock in normal order (was reverse)

  * tests/lang2po.hb
    + made all necessary modification to allow two-way conversion

  + tests/po2lang.hb
    + added script that converts a core .po back to a lang module

  * src/rtl/strc.c
    * casing in comments

  * config/lang.hb
    + added std script options
2013-04-02 02:51:04 +02:00
Viktor Szakats
f47c4f3a97 2013-04-01 18:53 UTC+0200 Viktor Szakats (harbour syenar.net)
* src/rtl/hbi18n2.prg
    * __i18n_potArrayClean() will now call transformation callback
      first again
    * __i18n_potArrayClean() transformation callback returning non-string
      will now be ignored instead of deleting the item

  * utils/hbmk2/hbmk2.prg
    * TOFIX added to a help text
2013-04-01 18:53:54 +02:00
Viktor Szakats
c57aef04fc 2013-04-01 13:36 UTC+0200 Viktor Szakats (harbour syenar.net)
* .gitignore
    + added .hrb files

  * src/rtl/hbi18n2.prg
    * __i18n_potArrayClean() reverted to call transformation callback
      after deleting items
2013-04-01 13:37:33 +02:00
Viktor Szakats
1d279f7626 2013-04-01 04:13 UTC+0200 Viktor Szakats (harbour syenar.net)
* src/rtl/hbi18n2.prg
    + __i18n_potArrayClean() wlll now call transformation callback before
      deleting items
    ! __i18n_potArrayClean() fixed item deletion when transformation callback
      returns non-string

  * ChangeLog.txt
    * missed changed from prev
2013-04-01 04:14:50 +02:00
Viktor Szakats
02ebccfcdd 2013-04-01 03:33 UTC+0200 Viktor Szakats (harbour syenar.net)
* src/rtl/hbi18n2.prg
    ! __i18n_potArraySort() fixed to not RTE when no source is present
    + __i18n_potArraySort() tweaked to sort items w/o source info to always
      come before ones with source info
    + __i18n_potArrayClean() wlll now call transformation callback before
      deleting items
    + __i18n_potArrayClean() will now remove the item in question if the
      callback returns any non-string value
    + __i18n_potArrayClean()'s second lKeepVoidTranslations = .F. option will
      now also remove items where the translation is identical to the msg id

  - utils/hbmk2/_po_pull.hb
  - utils/hbmk2/_po_push.hb
  - utils/hbmk2/_md_make.hb
  + utils/hbmk2/hblang.hb
    * merged separate management scripts into one
    + sort pulled .po files before stripping/processing
    ! do not process .po files in place to avoid race conditions
      between parallel script sessions
    * minor tweaks

  * README.md
    ! minor
2013-04-01 04:09:18 +02:00
Viktor Szakats
cdc25aa128 2013-04-01 01:35 UTC+0200 Viktor Szakats (harbour syenar.net)
* src/rtl/hbi18n2.prg
    * consider the complete original string when sorting (was first 30 chars)

  * utils/hbmk2/_po_pull.hb
    ! more automatic translation fixups:
      "( " -> "("
      " )" -> ")"
2013-04-01 01:37:20 +02:00
Viktor Szakats
f7bd4b33e7 2013-04-01 01:14 UTC+0200 Viktor Szakats (harbour syenar.net)
* include/harbour.hbx
  * src/rtl/hbi18n2.prg
    + added __i18n_potArrayClean() function that can clean source comments,
      empty translations and able to do transformations on translations via
      use supplied callback.

  * utils/hbmk2/_po_pull.hb
    + do cleansing on .po files pulled from Transifex:
      % strip source comments
      % strip empty translations
      ! strip right/left padding from translated strings
      ! convert multiple spaces to single one in translated strings
    ; This will help keeping the diffs nice and tight and the
      .po files in repo minimal in size

  - utils/hbmk2/po/!
    - deleted another accindental file :( fixed auto-script to be
      more selective.
2013-04-01 01:18:50 +02:00
Viktor Szakats
4f1db3a0b0 2013-03-31 22:52 UTC+0200 Viktor Szakats (harbour syenar.net)
* include/harbour.hbx
  * src/rtl/hbi18n2.prg
    + added __i18n_potArraySort( aTrans ) -> aTrans
      to sort .pot files to a predictable order (of first
      occurrence in file). It helps reducing unnecessarily
      large and unusable diffs when updating .pots and their
      related .po files

  * utils/hbmk2/hbmk2.prg
    * marked some string previously (and intentionally) marked
      as non-translatable, as translatable. One exception less.

  * utils/hbmk2/_po_push.hb
    + sort .pot before saving and pushing to localization service
2013-03-31 22:55:32 +02:00
Viktor Szakats
35300e401d minor doc/comment/test cleanups 2013-03-31 21:35:57 +02:00
Viktor Szakats
aaa6a84532 2013-03-31 21:22 UTC+0200 Viktor Szakats (harbour syenar.net)
* .gitignore
    * deleted .def file as they are now covered by bin/*/ and
      otherwise .def files do exist in source repo

  * contrib/rddads/doc/en/adsfuncs.txt
  * doc/en/string.txt
    * cleanups

  * utils/hbmk2/hbmk2.prg
    * cleaned function skeletons in help

  * extras/hbdoc/hbdoc.prg
    + include unknown COMPLIANCE value as in is doc instead of an error msg

  * src/compiler/compi18n.c
    * uncrustified, tweak formatting manually
    % optimized variable scopes

  * src/rtl/hbi18n2.prg
    * minor formatting
2013-03-31 21:25:16 +02:00
Viktor Szakats
3851b7d40b 2013-03-29 23:25 UTC+0100 Viktor Szakats (harbour syenar.net)
* src/rtl/cdpdet.prg
  * src/rtl/langcomp.prg
  * utils/hbmk2/_md_gen.hb
    + added support for Spanish (Latin American) (es_419) dialect

  * utils/hbmk2/hbmk2.hbp
    + added es_419, synced with Transifex language codes

  + utils/hbmk2/_po_dl.hb
    + added automatic script that refreshes repo translations
      with Transifex translation data

  * utils/hbmk2/po/hbmk2.el.po
  * utils/hbmk2/po/hbmk2.hu.po
  * utils/hbmk2/po/hbmk2.it.po
  + utils/hbmk2/po/hbmk2.es_419.po
  + utils/hbmk2/po/hbmk2.fr_FR.po
  * utils/hbmk2/po/hbmk2.es.po -> utils/hbmk2/po/hbmk2.es_ES.po
    * synced language codes
    + updated from Transifex using new script _po_dl.hb

  * contrib/hbrun/doc/hbrun.hu.md
  * contrib/hbrun/doc/hbrun.it.md
  + contrib/hbrun/doc/hbrun.es_419.md
  * contrib/hbrun/doc/hbrun.fr.md -> contrib/hbrun/doc/hbrun.fr_FR.md
  * contrib/hbrun/doc/hbrun.es.md -> contrib/hbrun/doc/hbrun.es_ES.md
    * synced language codes
    + regerenated using _md_gen.hb

  * utils/hbmk2/doc/hbmk2.el.md
  * utils/hbmk2/doc/hbmk2.hu.md
  * utils/hbmk2/doc/hbmk2.it.md
  + utils/hbmk2/doc/hbmk2.es_419.md
  * utils/hbmk2/doc/hbmk2.fr.md -> utils/hbmk2/doc/hbmk2.fr_FR.md
  * utils/hbmk2/doc/hbmk2.es.md -> utils/hbmk2/doc/hbmk2.es_ES.md
    * synced language codes
    + regerenated using _md_gen.hb
2013-03-29 23:28:16 +01:00
Viktor Szakats
ce8414897f 2013-03-29 16:22 UTC+0100 Viktor Szakats (harbour syenar.net)
* src/rtl/langcomp.prg
    ! fixed hb_langSelect() to accept ISO language codes
      using '_' as separator

  * utils/hbmk2/po/hbmk2.el_GR.po
    * updated
2013-03-29 16:23:39 +01:00