tg 
							
						 
					 
					
						
						
							
						
						d4658a569e 
					 
					
						
						
							
							refactor code to be able to track whether we have a parameter substitution  
						
						... 
						
						
						
						or a “proper” glob expansion; if there’s a dollar, but not a glob, refrain
from appending a space later (LP: #710539 ) 
						
						
					 
					
						2011-02-03 15:57:52 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						1c4aab3a3e 
					 
					
						
						
							
							when setting a UTF-8 locale, also set -o utf8-mode  
						
						... 
						
						
						
						since we might start on e.g. GNU/Linux with a system-wide C locale 
						
						
					 
					
						2011-02-02 22:48:15 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						c4e5678c0e 
					 
					
						
						
							
							regen  
						
						
						
						
					 
					
						2011-01-30 02:28:31 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						d7c2e16ca0 
					 
					
						
						
							
							fix typos  
						
						
						
						
					 
					
						2011-01-30 02:18:25 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						45d99b9ec9 
					 
					
						
						
							
							Scan for existence of <sys/file.h> which is not ubiquitous; allows  
						
						... 
						
						
						
						klibc-mksh (despite no hope to get a signal of a job) persistent history 
						
						
					 
					
						2011-01-30 02:18:20 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						30d8e3934d 
					 
					
						
						
							
							SUSv4 says trap foo UNKNOWN is not a syntax error, merely exit ≠0.  
						
						... 
						
						
						
						Inspired by 673dab8698b0399c967216c02262eaf95361a75c. 
						
						
					 
					
						2011-01-30 01:36:00 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						bdfcdc56c8 
					 
					
						
						
							
							introduce MKSH_NOPROSPECTOFWORK which is like pdksh’s JOB_SIGS in reverse, like MKSH_UNEMPLOYED is pdksh’s JOBS in reverse; allows mksh to work (hah! no pun intended…) with klibc (and possibly, Syllable Desktop and Plan 9) for now, until they fix their bugs  
						
						
						
						
					 
					
						2011-01-30 01:35:35 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						07889fb0eb 
					 
					
						
						
							
							-DIN_MKSH is not used by anything  
						
						
						
						
					 
					
						2011-01-29 19:07:16 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						414c09ab1a 
					 
					
						
						
							
							plug regression introduced with read -d by fixing the problem differently  
						
						
						
						
					 
					
						2011-01-22 20:33:14 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						9b02e15d26 
					 
					
						
						
							
							For prev-hist-word, when doing other things in between reset the counter  
						
						
						
						
					 
					
						2011-01-21 22:43:17 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						da9d0f3d97 
					 
					
						
						
							
							${foo@x} is now special-expansion for values of x, defined for now:  
						
						... 
						
						
						
						‘#’ = hash of $foo 
						
						
					 
					
						2011-01-21 22:25:34 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						846fbde3b8 
					 
					
						
						
							
							add read with delimiter, like AT&T ksh93 (thanks Dave for the suggestion)  
						
						
						
						
					 
					
						2011-01-21 22:00:17 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						865b267dbf 
					 
					
						
						
							
							drop suspend alias in Android too  
						
						
						
						
					 
					
						2011-01-21 21:07:11 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						cc31d86e3b 
					 
					
						
						
							
							• implement KSHEGID, KSHGID, KSHUID variables by suggestion of Richard K.  
						
						... 
						
						
						
						(KSHEUID aka USER_ID already exists)
• simplify, speed up LCG and $RANDOM handling again 
						
						
					 
					
						2011-01-21 21:04:48 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						1d6e0470e0 
					 
					
						
						
							
							use header only if found  
						
						
						
						
					 
					
						2011-01-21 20:51:56 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						7326331f30 
					 
					
						
						
							
							RT|Chatzilla said in #!/bin/mksh that MSYS probably does mksh  
						
						
						
						
					 
					
						2011-01-15 21:56:36 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						230f59d064 
					 
					
						
						
							
							New functionality: assign here document to string variable directly,  
						
						... 
						
						
						
						without cat and temp files. Hacked in Lëtzebuerg ☺
This was the third try. Where to put this was not palpable… same for =(…) 
						
						
					 
					
						2011-01-09 21:57:29 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						b4948e430f 
					 
					
						
						
							
							this is a bashism but might be from ksh93 IIRC… still dead ugly as hell!  
						
						
						
						
					 
					
						2010-12-19 20:00:56 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						ce160a8155 
					 
					
						
						
							
							MKSH_SMALL need not imply !HAVE_REVOKE as default  
						
						
						
						
					 
					
						2010-12-12 14:06:35 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						210608b199 
					 
					
						
						
							
							regenerate all wcwidth code from UCD 6.0.0 and related tables,  
						
						... 
						
						
						
						and mgk25’s wcwidth.c 5.0 code; add check against 2-byte wchar_t;
optimise libc wcwidth(3) implementation taken from mksh and sync these 
						
						
					 
					
						2010-12-11 16:05:03 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						beba20ea56 
					 
					
						
						
							
							since dot.mkshrc is sourced by interactive shells anyway, and exporting  
						
						... 
						
						
						
						PS1 may hurt other shells, do not export it any more
reported by and fix suggestion / affected variables by Frank Terbeck 
						
						
					 
					
						2010-11-26 21:08:54 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						27dce9168a 
					 
					
						
						
							
							change behaviour of argument-less exit in traps to match SUSv4; Debian  #599484  (original patch from Jonathan Nieder, thanks!) in a variant that appears to handle nested traps well  
						
						
						
						
					 
					
						2010-11-01 17:29:05 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						e57379aab7 
					 
					
						
						
							
							regenerate from Unicode 6.0.0  
						
						
						
						
					 
					
						2010-11-01 17:28:49 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						29de79c7bf 
					 
					
						
						
							
							mknod’s now demoted and only used as special-case builtin, in MirBSD only  
						
						... 
						
						
						
						built for the installer, to save time, as the original OpenBSD hack wanted 
						
						
					 
					
						2010-10-08 17:56:57 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						c37518d509 
					 
					
						
						
							
							ouch! \c? is DEL, not \c~  
						
						
						
						
					 
					
						2010-10-08 17:30:05 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						3365cb8d0f 
					 
					
						
						
							
							• Build.sh: fix a compiler warning which, had it not been irrelevant in  
						
						... 
						
						
						
						a mirtoconf check, would’ve been a real problem on an LP64 platform
• sh.h: work around a bad interaction between -Wformat on gcc and manual
  string pooling for T_synerr, which is used in place of a format string
  in some places 
						
						
					 
					
						2010-10-01 19:04:38 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						895e8f584b 
					 
					
						
						
							
							partial obsd sync:  
						
						... 
						
						
						
						- remove some old groff workarounds in SYNOPSIS
- avoid "Op ... Oc" constructions
except where the latter doesn’t work with nroff 
						
						
					 
					
						2010-09-24 20:21:43 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						e169648b89 
					 
					
						
						
							
							while here, change SETUID_CAN_FAIL_WITH_EAGAIN to abort immediately  
						
						... 
						
						
						
						by suggestion of Chris Palmer again 
						
						
					 
					
						2010-09-19 19:28:23 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						b0b03a5a75 
					 
					
						
						
							
							RNDEBUG showed that using the pushb_fast will have much fewer syscalls  
						
						
						
						
					 
					
						2010-09-19 19:21:20 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						915b30adfe 
					 
					
						
						
							
							revert part of the “size reduction” diff (zero size change though):  
						
						... 
						
						
						
						shellf() implies an shf_flush()… 
						
						
					 
					
						2010-09-15 21:08:19 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						667d792d6a 
					 
					
						
						
							
							• Address concerns of Chris Palmer from the Android security team  
						
						... 
						
						
						
						– possible integer overflows in memory allocation, mostly
    ‣ multiplication: all are checked now
    ‣ addition: reviewed them, most were “proven” or guessed to be
      “almost” impossible to run over (e.g. when we have a string
      whose length is taken it is assumed that the length will be
      more than only a few bytes below SIZE_MAX, since code and
      stack have to fit); some are checked now (e.g. when one of
      the summands is an off_t); most of the unchecked ones are
      annotated now
    ⇒ cost (MirBSD/i386 static): +76 .text
    ⇒ cost (Debian sid/i386): +779 .text  -4 .data
  – on Linux targets, setuid() setresuid() setresgid() can fail
    with EAGAIN; check for that and, if so, warn once and retry
    infinitely (other targets to be added later once we know that
    they are “insane”)
    ⇒ cost (Debian sid/i386): +192 .text (includes .rodata)
• setmode.c: Do overflow checking for realloc() too; switch back
  from calloc() to a checked malloc() for simplification while there
• define -DIN_MKSH and let setmode.c look a tad nicer while here 
						
						
					 
					
						2010-09-14 21:26:19 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						08862021ee 
					 
					
						
						
							
							add size optimisation hacks by me from Android except ifdef’d  
						
						... 
						
						
						
						(note, I’d prefer everyone to keep IDSTRINGs around though) 
						
						
					 
					
						2010-09-14 21:15:11 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						dcbfc48855 
					 
					
						
						
							
							┌──┤ apply Android patch from Jeff Hamilton:  
						
						... 
						
						
						
						│Don't alias 'stop' to 'kill -STOP'
│
│Android has already has a stop command used
│to stop the main runtime and the alias
│interferes with testing tools that expect
│stop to kill the runtime.
│
│Change-Id: I02b7efb9203dc39e97f63eb702a54ff79935b316
Although, this is closer to his first patchset and only takes
care of the alias, not the testsuite (which doesn’t run, at
least not out-of-the-box, nicely anyway) using #ifdef ANDROID.
We certainly want a more flexible testsuite… 
						
						
					 
					
						2010-09-14 21:00:13 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						4f671299f4 
					 
					
						
						
							
							lintian caught hyphen-used-as-minus-sign  
						
						
						
						
					 
					
						2010-09-05 20:43:37 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						56a69907d5 
					 
					
						
						
							
							optimise error messages, option parsing, and make more builtins  
						
						... 
						
						
						
						recognise "--", costs us 20 .text 0 .data 0 .bss 
						
						
					 
					
						2010-09-05 19:51:35 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						07b97d5444 
					 
					
						
						
							
							document workaround for the $(…) parsing bug  
						
						
						
						
					 
					
						2010-09-05 19:12:24 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						2c59cc6089 
					 
					
						
						
							
							more on the cat  
						
						
						
						
					 
					
						2010-08-28 21:22:24 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						06c6be0a70 
					 
					
						
						
							
							shave off another 468 bytes: we’re 300 bytes smaller than BEFORE the  
						
						... 
						
						
						
						cat builtin was added now… (also removed utf-8 from source files, in
favour of just ASCII) 
						
						
					 
					
						2010-08-28 20:22:24 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						3747722db4 
					 
					
						
						
							
							improve string pooling: saves 316 bytes in .text  
						
						
						
						
					 
					
						2010-08-28 18:50:58 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						d09fd67299 
					 
					
						
						
							
							make cat an mksh builtin, for things like here documents  
						
						... 
						
						
						
						if any options are given, the external programme is invoked instead 
						
						
					 
					
						2010-08-28 17:21:46 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						297e2ced89 
					 
					
						
						
							
							fix blocking_read prototype  
						
						
						
						
					 
					
						2010-08-28 16:47:11 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						4e08a79555 
					 
					
						
						
							
							whitespace  
						
						
						
						
					 
					
						2010-08-28 15:48:20 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						475cafb90e 
					 
					
						
						
							
							int → bool  
						
						
						
						
					 
					
						2010-08-28 15:39:20 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						1924f91aad 
					 
					
						
						
							
							this is 「category: os:mirbsd」 because of hardcoded errno and strerror values  
						
						
						
						
					 
					
						2010-08-24 15:47:44 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						79623f9ceb 
					 
					
						
						
							
							avoid more compiler warnings in mirtoconf phase  
						
						
						
						
					 
					
						2010-08-24 15:46:06 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						a0d43a99fd 
					 
					
						
						
							
							it’s ugly to write a ./stdint.h file if we can instead define the  
						
						... 
						
						
						
						types from sh.h; sync clog 
						
						
					 
					
						2010-08-24 15:19:54 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						7fdc42cead 
					 
					
						
						
							
							fix realpath builtin’s handling of (source) pathnames with a trailing slash  
						
						... 
						
						
						
						as per POSIX (if a trailing slash is part of the symlink target it fails as
well, like GNU readlink -f does) 
						
						
					 
					
						2010-08-24 14:42:04 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						8b946de857 
					 
					
						
						
							
							u_int32_t was only ever needed for OpenBSD’s pre-ISO-C arc4random API  
						
						... 
						
						
						
						since we don’t have that any longer, nuke it 
						
						
					 
					
						2010-08-15 00:43:55 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						52f565f527 
					 
					
						
						
							
							Tonnerre says his Linux 1.2 doesn’t have uint8_t, so check for it  
						
						... 
						
						
						
						and provide if necessary 
						
						
					 
					
						2010-08-15 00:41:05 +00:00 
						 
				 
			
				
					
						
							
							
								tg 
							
						 
					 
					
						
						
							
						
						23f3f58d14 
					 
					
						
						
							
							on MirBSD we can use the system wcwidth() and save ~800by on the ramdisc  
						
						
						
						
					 
					
						2010-08-14 21:35:13 +00:00