Commit Graph

2496 Commits

Author SHA1 Message Date
tg b55d9870e3 reorder notoktomul to have the constant as second argument like notoktoadd 2012-10-03 15:55:37 +00:00
tg 0575d07671 rewrite XPtrV to use size_t instead of pointer arithmetic, for gcc-snapshot (20120930-1) -fstrict-overflow -Wstrict-overflow=9 2012-10-03 15:50:32 +00:00
tg 167995da22 repair choiceless select builtin 2012-10-03 15:13:34 +00:00
tg 0d72035990 make char_is_8_bits assertion more anal 2012-09-28 18:57:49 +00:00
tg 4b2371eebf add workaround for musl (define _BSD_SOURCE as well) which is even *more*
ugly than the one for dietlibc (the other one misunderstanding the *real*
meaning of that flag), by $CC divining, until such time as all the Linux
C libraries will honour _ALL_SOURCE (I wish)…
2012-09-27 18:23:43 +00:00
tg 9fbdef8e60 pure RCSID sync with OpenBSD, as we introduced SIGWINCH tracking earlier
XXX we could track whether tty_fd has already been successfully opened,
XXX the ttystate initialised, and then just never close it unless it is
XXX necessary, then we can keep COLUMNS/LINES accurate in scripts, even
2012-09-21 17:20:22 +00:00
tg 89613d34d4 detect zsh 2.5.02 as found on NeXTstep 3.3; thanks to ft (Frank Terbeck) and chris2 (Christian Neukirchen) 2012-09-18 14:18:59 +00:00
tg eac85ffdf1 OpenBSD found out that "building argv for $* and $@" manipulates l->argv
in place which affects ps(1) output on BSD; create a new array and copy
the original parts from argv[] there without touching argv passed to main
2012-09-07 21:02:43 +00:00
tg 0415b74436 Update wcwidth data from Unicode 6.1.0 2012-09-01 23:46:41 +00:00
tg e6ddeaa53d sync clog 2012-08-24 21:33:51 +00:00
tg e2d1f3bf99 related to LP#1025843 fix tab completion for tilde
this code is insane, who wrote globbing and expansion for mksh’s
predecessor must have been on very interesting drugs
2012-08-24 21:15:42 +00:00
tg 42ac0dc08e second attempt at getting '$FOO/b*r/baz' tab-completed right,
plus the beginning of the tilde fix… do not use, this is fucking
impossible to get right, but I’d like an archival commit
2012-08-24 20:57:46 +00:00
tg 2ed6e8998c repair globbing $foo/ba*r/baz 2012-08-24 20:05:13 +00:00
tg 829cd0cc70 leak less memory from tab completion 2012-08-24 19:14:56 +00:00
tg 84020897fd allow overriding /etc location (LP#1039713), but don’t do it 2012-08-24 19:09:10 +00:00
tg beca8ed86f more int → bool 2012-08-24 19:02:57 +00:00
tg bb5e56d4c4 remove ${ foo;} from mksh again due to buffering issues jilles found 2012-08-17 18:34:25 +00:00
tg f18b1fae85 bump 2012-08-03 18:45:32 +00:00
tg 31ad60ea89 do not advertise printf(1) 2012-08-03 18:34:31 +00:00
tg 0decdb2100 ulimit: precompute option string for getopt and usage; noticed by bsiegert@ 2012-08-03 18:30:13 +00:00
tg 1d21782419 add -D_DARWIN_C_SOURCE on OSX; should help bsiegert@’s problem 2012-08-03 18:16:43 +00:00
tg 9b7b7f742e implement ksh93 feature ${ foo;} 2012-07-30 21:37:17 +00:00
tg 8e51bb7a23 fix reentry of here documents (LP#1030581) 2012-07-30 19:58:05 +00:00
tg 9156b9eee4 more int → bool 2012-07-30 17:28:21 +00:00
tg 0db4002bd6 remove unused flag 2012-07-30 17:04:31 +00:00
tg cb5b1b3a88 another rcsid-only sync 2012-07-25 19:40:40 +00:00
tg aedb299057 note that some longjmp don’t handle 0 properly
cf. <500C1B2E.9030602@zytor.com>
2012-07-22 15:56:51 +00:00
tg 058e7f8ed4 do implement quoting, as ${foo@Q} though, as hommage at mirmake
dedicate this “release” to Andi
and use tomorrow’s (UTC) day for version, to cover up my debian fuckup
2012-07-20 23:22:13 +00:00
tg 403c7c8e50 remove misleading comment fixed in last commit 2012-07-20 22:47:22 +00:00
tg 6724ba505d make 'typeset -p' (and soon ${foo@$}) output strings safe for re-entry
into AT&T ksh93 (that we still must use octal, in this day and age,
because dgk’s \x is broken… tss…)

not round-trip, as ksh93 doesn’t encode hi-bit7 or \v, but safe
2012-07-20 21:18:45 +00:00
tg b90a11f6c5 fix more cases of x_delete() bytes vs. characters abuse (tested!); fix some int vs. size_t issues (XXX also fix x_cf_glob and friends some day…) 2012-07-20 20:50:07 +00:00
tg bea2b756b3 factor out common code (convert from "byte offset from cursor" to number of characters) 2012-07-20 20:33:15 +00:00
tg 98ff25a001 fix no less than two more bugs and one regression in the Emacs tab completion code (LP#1025843) 2012-07-20 20:16:26 +00:00
tg 2aceb6893d make QCHAR-for-glob {,un}escaping code into helper functions
no code change
2012-07-20 18:39:53 +00:00
tg 1e2755edc1 x_lastcp(); done by x_zots already 2012-07-20 18:08:23 +00:00
tg 4778a2a62f lesson learned from http://k1024.org/~iusty/blog/entry/perf-null/ – add -DMKSH_SMALL_BUT_FAST which gives more speed (8/20K less cycles, 5/9K less insns, 1.8/2.4k less branches, 65/275 less branch misses) on Debian/amd64 (klibc-static/eglibc) at cost of 0/2 more page faults and 6K/6K more text size 2012-07-01 15:55:00 +00:00
tg 798cfdc982 add test-build-lksh developer target 2012-07-01 15:54:36 +00:00
tg 978d365ab1 -L implies convfds now 2012-07-01 15:51:24 +00:00
tg 516678f4fd imply MKSH_CONSERVATIVE_FDS by MKSH_LEGACY_MODE, too 2012-07-01 15:44:31 +00:00
tg 35c65bb568 bugfix: make CONSERVATIVE_FDS implied by MKSH_SMALL actually work 2012-07-01 15:41:56 +00:00
tg 67714b270a dissolve the hashtab nonsense, ¾ is good, and mirkev will also use that 2012-07-01 15:38:09 +00:00
tg c6edd7ebe6 lessons learned during nullperf tests: inlining this is always bad 2012-07-01 15:36:18 +00:00
tg 01e1b0de24 lksh: mention IRC and ML; mksh: mention SSL 2012-06-29 08:11:45 +00:00
tg c1f821d4e5 (mksh) tighten 32-bit requirements; (lksh) switch to long; allow any bitness 2012-06-28 20:17:39 +00:00
tg ae26f45417 fix emacs/vi lksh 2012-06-28 20:14:17 +00:00
tg e111b33d9a keep the emacs/gmacs/vi* options in lksh, just they don't do anything any more 2012-06-28 20:09:30 +00:00
tg ea01d80833 hackish work-around the lexer to make alias definitions in mksh -c
work (Closes: #517009) and mention in the manpage why they sometimes
do not work (doing so for COMSUBs is not worth the effort)
2012-06-28 20:05:11 +00:00
tg d824683000 ensure that case end tokens are not mixed up (Closes: #220272)
XXX token/tpeek/musthave should rescan the last input lexems
XXX if the new cf passed doesn't match the last cf passed
2012-06-28 20:04:02 +00:00
tg 0c3aed77e0 fix trimming with positional parameters (Closes: #48453) 2012-06-28 20:03:20 +00:00
tg dc5ae267ce make tempvar() and vtemp global 2012-06-28 20:02:29 +00:00