~ubuntu-branches/ubuntu/karmic/mksh/karmic

Viewing all changes in revision 6.

  • Committer: Bazaar Package Importer
  • Author(s): Thorsten Glaser
  • Date: 2007-04-25 11:36:42 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20070425113642-84xnxqdkzau1qrlf
Tags: 29.2-1
* New upstream formal release; summary of changes:
  + a plethora of UTF-8 fixes:
  - display control characters U+0080..U+009F the same as U+0000..U+001F,
    i.e. a caret followed by the character corresponding to the control
    character XOR 0x0040, treat their width as 2 subsequently
  - fix crash (cpu hog in spinning loop) on meta-tab + backspace
  - strip off UTF-8 byte order mark at beginning of input
  - if a BOM is encountered, switch on utf-8 command line editing mode
  + in utf-8 command line editing mode, handle invalid input more strictly:
  - if in x_literal(), i.e. the ^V mode (bind to quote), allow it as before
  - if it's the start of an invalid multibyte sequence, reject with a beep
    (e.g. if trying to input latin1 chars)
  - if it's an invalid or partial multibyte sequence, reject silently
  -> this makes command line editing much more robust
  + other bug fixes:
  - in a rare condition (error path), the wrong function was used to copy
    a string that could contain embedded NULs (encoded format), leading to
    memory access past malloc'd area
  - in the same path, fix an out-of-bounds access inherited from openbsd ksh
  -> discovered on Debian GNU/Linux experimental ia64, glibc 2.5-beta
  + new functionality:
  - if execve() fails, before passing the file to $EXECSHELL, open it and
    try to parse a shebang line; if we find one, do it ourselves
    (the good part of this is that it even works when there is a UTF-8 BOM
    before the shebang magic sequence)
  - for shebang processing, not only NUL or LF but also CR terminate the line
  - enhancements to the "dot.mkshrc" sample file (which is now regularily
    used upstream as well)
  - if the internal function exchild() fails, don't just tell the user that
    it failed, tell him WHAT failed (unless -DMKSH_SMALL)
  + code cleanup changes:
  - remove unused functions, macros
  - fix typos, errors, etc.
  - shut up gcc 4.1.2 warnings
  - Build.sh cygwin vs unix cleanup/simplification
  - shrink manual page to 39 DIN A4 pages when output as postscript
  + reliability changes:
  - if $CC supports -fstack-protector-all, add it to $CFLAGS
  - if $CC supports -fno-tree-vrp, add it to $CFLAGS if $CC is subject to
    the bug http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30785
  - add mirtoconf check for "large file support", requested by bsiegert@,
    needed for some *nix, idea and implementation hints from GNU autoconf
  - add zsh workaround to Build.sh, just in case (untested)
* disable the possible workaround mentioned in the changes for 28.9.20070309
  because I was unable to verify/test it; maybe it only applies to the glibc
  in experimental anyway, we'll see to that later
* add a comment about the regression test needing openpty() to debian/rules
* remove non-ASCII (i.e. high-bit7) characters from diff/changelog
* slightly enhance package description
* properly indent homepage link in description, thanks KiBi (kfreebsd team)

expand all expand all

Show diffs side-by-side

added added

removed removed

Lines of Context: