Commit Graph

2939 Commits

Author SHA1 Message Date
tg 8d22d9226f use evalstr instead of wdstrip+substitute and drop home-grown backslash removal 2015-12-12 18:47:22 +00:00
tg d4aa35212c fix a few expansion substitutions to do tilde expansion
issue spotted by izabera and confirmed by Geoff Clare
2015-12-12 17:28:10 +00:00
tg c10a8b5809 move tests that logically belong together; no change 2015-12-12 16:37:44 +00:00
tg 4e036f26d1 easy portability fix from Jilles Tjoelker <jilles@stack.nl>; reason:
> In the Bourne shell, ksh93 and FreeBSD sh, the double-quote directly
> after the question mark starts an unquoted part inside the message.
2015-12-11 16:55:55 +00:00
tg 61726fd124 while fgrep’s easier on the eyes, grep -F’s more well-known 2015-12-08 20:59:33 +00:00
tg 124e6693e9 janitorial work 2015-11-29 17:05:02 +00:00
tg 7a47656efe fix \u0000 and \x00 being ignored in $'…' and print +r expansion 2015-10-24 19:46:10 +00:00
tg 1a4f644d6e save ~1½K from the bootfloppy by reusing MirBSD libkern wcwidth(3)
but don’t bother for this for the regular /bin/mksh either
to keep the generic code path tested well
2015-10-24 19:45:23 +00:00
tg 5018e4a21b another testcase, before I go changing the way let] is handled 2015-10-13 21:39:53 +00:00
tg cef386fb60 make “source” into a built-in command (keepasn, to match ksh93 and “dot”);
remove the “stop” alias and drop old Android and OS/2 hacks and auto-unalias
2015-10-09 21:36:59 +00:00
tg 52b0370973 some doc overhaul/bugfixes; TODO: document all of FPOSIX, FSH deltas
(after working through lksh.1 and deciding on them)
2015-10-09 20:43:11 +00:00
tg 7a5a9c9ea0 move some information off mksh.1; harmonise 2015-10-09 20:33:49 +00:00
tg fc48729336 tweak some iop/conservative_fds-related things I picked up while thinking lksh 2015-10-09 19:29:50 +00:00
tg 22fff17047 comments for future directions (keep delta lower, make lksh-as-ksh doable)
oksh synching will be more work than I can continue while being ill still…
2015-10-09 19:28:20 +00:00
tg af35e9a6de revert most of commitid 3ec342c92b3a8874 and fixup the rest;
this should bring us closer to POSIX again
2015-10-09 17:48:53 +00:00
tg 3fc8b5eb94 partial oksh sync, up to commit 80be547da108d5c241ae068290ca3e331446aa41? 2015-10-09 16:11:19 +00:00
tg e32f7d933b clean up ifdefs; some errnos are mandatory anyway; add one of those 2015-10-09 15:38:36 +00:00
tg 59e7366036 a bit more careful, even if probably unnecessary 2015-10-09 15:28:20 +00:00
tg eb9050b8f8 stop using issetugid(2) for ±p check as it’s probably not the right tool 2015-10-05 17:59:00 +00:00
tg ed5cb56849 replace the code related to << changes and <<< with cleaner code,
fixing a few bugs also (including new testcases, except x=<< issue)
2015-09-06 19:47:01 +00:00
tg 0f6aa7eaab fix more int vs. size_t mismatches 2015-09-06 13:10:48 +00:00
tg edc2acd61d fix tree printing multiple heredocs in one command, bug found by izabera 2015-09-05 20:20:48 +00:00
tg 4adcfe8b58 oksh sync, simplify *all* if(x)free(x); constructs, simplify x_push() and sync boilerplate while here 2015-09-05 19:19:12 +00:00
tg 719778193a add missing colon to two error msgs (no effect on dedup) 2015-09-05 17:20:19 +00:00
tg 8a11d7a6a2 we have longer fds now, plus add 1 for a space just to be sure 2015-09-05 17:17:47 +00:00
tg 92978953b2 ; on OS/2 2015-08-13 22:09:10 +00:00
tg 1b8b792b7e quote path separator if ; in some cases; pointed out by komh 2015-08-13 22:06:23 +00:00
tg c674e71377 be more careful with signals and errorlevels; bounds-check them better;
don’t trust the OS as POSuX comes up with more-than-8-bit exit codes now;
also, one more int → bool
2015-08-13 21:38:19 +00:00
tg 9d30e9c9d6 oksh sync: one rcsid-only plus this one by guenther:
Zero-pad the seconds in the output of 'time' to make columns line up
2015-08-13 21:04:12 +00:00
tg fdb9509fe5 make 'typeset -f' output reentrant in the face of functions whose
names are keywords and a GNU bash extension (gah!); reported by izabera
2015-08-13 20:54:03 +00:00
tg c2d9863a05 make setenv set -u safe and fix behaviour for no args 2015-07-18 23:03:24 +00:00
tg 0df20b04b8 documentation update (external links), from _0bitcount via IRC 2015-07-12 19:09:50 +00:00
tg ba8a6e9461 merge OS/2 style PATH (absolute with drive letters, ‘;’ as separator)
From: KO Myung-Hun <komh@chollian.net>
2015-07-10 19:36:38 +00:00
tg fd37f4baf0 POSIX doesn’t like the OPTU encoding scheme due to btowc/mbtowc asymmetry,
so make all utf8-mode behaviour implementation-defined (and document the
raw octet mapping more explicitly)
2015-07-10 19:35:39 +00:00
tg 0fd9337123 implement support for PC scancodes à la CHR$(0)+CHR$(&h48)
superseding an mksh-os2 patch which confirmed this is needed

Reference: my copy of the Schneider EURO PC manual 50032 for
Microsoft® GW-BASIC
2015-07-10 18:41:07 +00:00
tg 5613d6a04a an edchar cannot conceivably be NUL, so set them to the default;
this is confirmed to help fix OS/2 and plugs an uninitialised read
on systems without werase
2015-07-10 17:31:09 +00:00
tg abfde383fe git@github.com:komh/pdksh-os2 commit 590f2b19b0ff92a9a373295bce914654f9f5bf22
says to use <termio.h> not <termios.h> on OS/2

From: Ilya Zakharevich <ilya@math.ohio-state.edu>
2015-07-10 17:16:23 +00:00
tg edf76ec8e6 harden the crlf vs lf tests even more; use binary mode explicitly on OS/2 2015-07-09 20:52:43 +00:00
tg dcd8b6389b apply the new cat hack to printf, too, to prefer it over the builtin 2015-07-09 20:20:45 +00:00
tg f274f18223 SECURITY: quote the arguments to true 2015-07-09 20:11:45 +00:00
tg d034be7a84 more mksh-os2 inspired hackery 2015-07-09 19:59:14 +00:00
tg 483536e336 point out mknod is not normally part of mksh either 2015-07-09 19:50:44 +00:00
tg 950827394b more easy OS/2 fixes
From: KO Myung-Hun <komh@chollian.net>
2015-07-09 19:46:43 +00:00
tg 041666eefb a few more mksh-os2 inspired fixes 2015-07-09 19:28:21 +00:00
tg 3d8ba005e1 add a few generic fixes from mksh-os2
From: KO Myung-Hun <komh@chollian.net>
2015-07-09 19:19:10 +00:00
tg e88316739e merge from git@github.com:komh/mksh-os2
Use gcc on OS/2

From: KO Myung-Hun <komh@chollian.net>
2015-07-09 19:04:28 +00:00
tg f463d9da76 • revert the cat hack for realpath and rename
‣ I was convinced by several that more magic is never the solution
• fix a comment: function cat already had precedence
• change cat loader to look for existence, FPATH included, before
  ditching the builtin; note that in manpage
2015-07-06 17:48:37 +00:00
tg d09aca4175 do the IFS_QUOTE dance right; this finally fixes ""$@ 2015-07-06 17:45:33 +00:00
tg 2e4cd72899 make certain actions flush the history buffer 2015-07-05 19:53:46 +00:00
tg e0196f47d5 implement completely new multiline code by delaying history store
this commit is valgrind-tested
2015-07-05 19:37:18 +00:00