christos
7ea7f895f5
Use #ifdef __STDC__ instead of #if __STDC__
1997-04-11 23:06:51 +00:00
christos
92cdde85e8
Fix so that this compiles on systems without quads and remove the double
...
inclusion of varargs/stdarg
1997-04-11 23:05:43 +00:00
christos
70bb105c67
Pointer arithmetic on void * is illegal but gcc does not care.
1997-04-11 23:03:08 +00:00
christos
23745b89db
Don't call getpwd() because if that fails the shell cannot start. (from scott)
1997-04-11 23:01:44 +00:00
christos
f726a3c453
Rename pread to preadfd
1997-04-11 23:00:40 +00:00
christos
3bddaec49b
add forward declaration of union node;
1997-04-11 22:58:40 +00:00
christos
7efa5addb4
Track $TERM and call the appropriate editline(3) routine to update the
...
terminal type.
1997-04-11 22:45:38 +00:00
christos
a0fa692d3b
PR/3352: From Hiroyuki Ito: ${#1} was not being expanded properly if there
...
was a need to allocated another stack block.
1997-03-18 18:54:40 +00:00
christos
7accaec421
NO_HISTORY->SMALL
1997-03-14 01:42:18 +00:00
christos
6042831b7e
Fix problems with -DNO_HISTORY
1997-03-13 21:57:32 +00:00
mycroft
3a59e5e8e3
Set input files to close-on-exec mode.
1997-03-13 20:07:49 +00:00
mouse
412433b44c
alternate -> alternative, per PR 2643
1997-03-08 13:26:20 +00:00
christos
6b7623a681
Fix PR/3289: upon initialization check if $PWD contains the right directory
...
and use it. We also maintain $PWD now, like the rest of the
shells.
1997-03-07 21:36:19 +00:00
christos
4a521d359f
varisset fixes:
...
- treat $0 specially since it is not in shellparams
- check the number of parameters instead of walking
the parameters array to avoid checking against the
null terminated element.
1997-03-03 19:26:18 +00:00
christos
edc5dadbab
PR/3269: Off by one in varisset(), caused variable substitution not to
...
count the last positional parameter as set.
1997-03-01 19:33:29 +00:00
christos
a5aaf55cf3
Fix PR/3258 sh -c 'echo $0' causes segmentation fault.
1997-02-25 17:51:50 +00:00
christos
680690d33c
add type builtin.
1997-02-06 23:24:52 +00:00
christos
6f224ae59f
Fix parsing problem introduced in the previous ${10} fix, where $#digit
...
or $digit# would get mis-parsed as a positional parameter.
1997-01-26 18:05:34 +00:00
christos
633ceb6db5
- varisset(): In positional arguments, take into account VSNUL so that:
...
set -- ""; echo ${1:-wwww} works.
- when expanding arithmetic, discard previous ifs recorded regions, since we
are doing our own scanning. x=ab; echo $((${#x}+1)) now works.
- in ${var#word} fix two bugs:
* if there was an exact match, there was an off-by-one bug in the
comparison of the words. x=abcd; echo ${x#abcd}
* if there was no match, the stack region was not adjusted and the rest
of the word was getting written in the wrong place. x=123; echo ${x#abc}X
1997-01-24 17:26:28 +00:00
christos
3d5f212ba8
enable parsing of multi-digit positional arguments i.e. ${10} works and it
...
is not a bad substitution.
1997-01-24 17:15:56 +00:00
tls
48250187e6
kill 'register'
1997-01-11 02:04:27 +00:00
cjs
5678a13f1b
Re-introduce some code from 1.14 (with modifications) to make the
...
shell's idea of the current working directory match reality when
symlinks (or anything else we can't stat) are traversed with the
cd command. However, this does not print out the cwd after cd
traverses symlinks, as it used to, though the capability is still
there should one want to use it.
1996-12-22 08:34:34 +00:00
christos
a00e49c200
Getopts bugs again (I'll never get this right).
...
- make sure that OPTIND is set correctly even in the absence of options.
- don't keep stale state between getopts calls.
1996-12-15 20:37:09 +00:00
christos
340077b543
- fix parsing bug reported by mycroft: ! was only recognized in the beginning
...
of pipelines. Now we are recognizing it everywhere like ksh, so:
! if [ a = b ]; then ! echo c && ! true; else ! echo d; fi
works.
1996-11-25 20:22:00 +00:00
christos
9530a32719
Fix bug in getopts code where the argument list got truncated.
...
From Todd Miller.
1996-11-24 20:48:01 +00:00
christos
07aeb5b266
remove a debugging printf that was left from the last POSIX error code fixes.
1996-11-09 01:04:07 +00:00
christos
ccce082dd2
Fix miscellaneous getopts problems:
...
- the 3 argument version of getopts would not reset properly
- OPTARG did not get cleared after a non argument option was found
- OPTIND was not set properly after a non argument option.
1996-11-06 01:17:10 +00:00
christos
846dce0ee3
Fix problems that gcc -Wall found (from Todd Miller, OpenBSD)
1996-11-02 18:26:03 +00:00
christos
a4ad4c0efc
A correction to the previous patch from Todd Miller.
1996-11-02 18:07:08 +00:00
christos
27e15e5bbc
echo ${1:-empty} did not do the substitution; from Todd Miller (OpenBSD)
1996-11-02 17:47:41 +00:00
cgd
8ba64baaaf
add builtins.h to the list of (built) headers depended on by ${OBJS}, so
...
make from 'cleandir' works.
1996-10-22 13:22:19 +00:00
abrown
e613224229
Remove leftover printf("here") from last change.
1996-10-19 02:38:36 +00:00
christos
bc73cf950a
PR/2808: Remove trailing whitespace (from FreeBSD)
1996-10-16 15:45:03 +00:00
christos
afb80e9b13
PR/2808: Add a definition for warnx() (from FreeBSD; currently unused)
1996-10-16 15:28:10 +00:00
christos
2b0a187f34
PR/2808: Use .Nm macro properly. (from FreeBSD)
1996-10-16 15:27:03 +00:00
christos
1a523dd56b
PR/2808: - Don't use p++ in macros.
...
- Hash using unsigned numbers.
(from FreeBSD)
1996-10-16 15:24:31 +00:00
christos
68b1dcea6d
PR/2808: Don't define DEBUG and #ifdef out functions not needed when DEBUG
...
is not defined (from FreeBSD).
1996-10-16 15:21:49 +00:00
christos
3b66e0cada
PR/2808: Add HISTORY section and documentation of getopts. (from FreeBSD)
1996-10-16 15:20:01 +00:00
christos
da8c1311a3
PR/2808: fix redirection to the same file descriptor
...
better error messages for failed pipes
(from FreeBSD)
1996-10-16 15:16:04 +00:00
christos
d8c242f0ae
PR/2808: - detect eof inside backquotes
...
- handle && and || shortcircuits properly
- tokens.def -> tokens.h
(from FreeBSD)
1996-10-16 14:53:23 +00:00
christos
10a76271de
No need to have 2 declarations for the same constant string, one for K&R and
...
one for STDC...
1996-10-16 14:51:24 +00:00
christos
fd8c99438e
PR/2808: POSIX 1003.2: first arg after -c cmd is $0, remainder $1...
...
(from FreeBSD)
1996-10-16 14:49:56 +00:00
christos
14185e5152
PR/2808: Kill use of error2() (from FreeBSD)
1996-10-16 14:49:03 +00:00
christos
71ab1d0aed
PR/2808: tokens.def -> tokens.h
1996-10-16 14:47:49 +00:00
christos
03ba3cf0d6
PR/2808: Use the <ctype.h> functions instead of our homegrown tables to
...
determine if a character is alpha or alphanumeric, so that NLS
works... now if only our NLS really worked... (from FreeBSD).
1996-10-16 14:46:35 +00:00
christos
f6c00506fc
PR/2808: Remove extraneous newline from error message (from FreeBSD)
1996-10-16 14:44:28 +00:00
christos
00a9e38ee8
PR/2808: #undef things that we #define to avoid duplicate definitions.
...
(from FreeBSD)
1996-10-16 14:43:37 +00:00
christos
a20d79429a
PR/2808: Don't include <sgtty.h> unless OLD_TTY_DRIVER is defined.
...
Remove extraneous newline from error messages.
1996-10-16 14:42:20 +00:00
christos
435812e77d
PR/2808: Remove extraneous newlines from error routines (from FreeBSD)
1996-10-16 14:40:32 +00:00
christos
4b99c4d748
PR/2808: Fix parsing of $n where n > 9 (from FreeBSD)
1996-10-16 14:38:58 +00:00