bsh.c (schily-2021-08-14.tar.bz2) | : | bsh.c (schily-2021-09-18.tar.bz2) | ||
---|---|---|---|---|
/* @(#)bsh.c 1.80 20/01/27 Copyright 1984,1985,1988,1989,1991,1994-2020 J. Sch illing */ | /* @(#)bsh.c 1.81 21/08/20 Copyright 1984,1985,1988,1989,1991,1994-2021 J. Sch illing */ | |||
#include <schily/mconfig.h> | #include <schily/mconfig.h> | |||
#ifndef lint | #ifndef lint | |||
static UConst char sccsid[] = | static UConst char sccsid[] = | |||
"@(#)bsh.c 1.80 20/01/27 Copyright 1982,1984,1985,1988,1989,1991,199 4-2020 J. Schilling"; | "@(#)bsh.c 1.81 21/08/20 Copyright 1982,1984,1985,1988,1989,1991,199 4-2021 J. Schilling"; | |||
#endif | #endif | |||
/* | /* | |||
* bsh command interpreter - main Program | * bsh command interpreter - main Program | |||
* | * | |||
* Copyright (c) 1982,1984,1985,1988,1989,1991,1994-2020 J. Schilling | * Copyright (c) 1982,1984,1985,1988,1989,1991,1994-2021 J. Schilling | |||
*/ | */ | |||
/* | /* | |||
* The contents of this file are subject to the terms of the | * The contents of this file are subject to the terms of the | |||
* Common Development and Distribution License, Version 1.0 only | * Common Development and Distribution License, Version 1.0 only | |||
* (the "License"). You may not use this file except in compliance | * (the "License"). You may not use this file except in compliance | |||
* with the License. | * with the License. | |||
* | * | |||
* See the file CDDL.Schily.txt in this distribution for details. | * See the file CDDL.Schily.txt in this distribution for details. | |||
* A copy of the CDDL is also available via the Internet at | * A copy of the CDDL is also available via the Internet at | |||
* http://www.opensource.org/licenses/cddl1.txt | * http://www.opensource.org/licenses/cddl1.txt | |||
skipping to change at line 44 | skipping to change at line 44 | |||
#include "abbrev.h" | #include "abbrev.h" | |||
#include "str.h" | #include "str.h" | |||
#include "strsubs.h" | #include "strsubs.h" | |||
#include <schily/varargs.h> | #include <schily/varargs.h> | |||
#include <schily/stdlib.h> | #include <schily/stdlib.h> | |||
#include <schily/unistd.h> | #include <schily/unistd.h> | |||
#include <schily/string.h> | #include <schily/string.h> | |||
#include <schily/fcntl.h> | #include <schily/fcntl.h> | |||
#include <schily/getargs.h> | #include <schily/getargs.h> | |||
#include <schily/locale.h> | #include <schily/locale.h> | |||
#include <schily/nlsdefs.h> | ||||
#ifdef SIGUSR1 | #ifdef SIGUSR1 | |||
# define PROTSIG SIGUSR1 | # define PROTSIG SIGUSR1 | |||
#else | #else | |||
# define PROTSIG 31 | # define PROTSIG 31 | |||
#endif | #endif | |||
char *prompts[2] = { NULL, NULL}; | char *prompts[2] = { NULL, NULL}; | |||
/* | /* | |||
skipping to change at line 352 | skipping to change at line 353 | |||
#ifdef WRONG | #ifdef WRONG | |||
#ifdef JOBCONTROL | #ifdef JOBCONTROL | |||
setpgid(0, mypid); | setpgid(0, mypid); | |||
mypgrp = getpgid(0); | mypgrp = getpgid(0); | |||
#endif | #endif | |||
#endif /* WRONG */ | #endif /* WRONG */ | |||
ev_init(ev); | ev_init(ev); | |||
if (setlocale(LC_ALL, "") == NULL) | if (setlocale(LC_ALL, "") == NULL) | |||
error("Bad locale in inital environment.\n"); | error("Bad locale in inital environment.\n"); | |||
ev_insert(concat(ignoreeofname, eql, off, (char *)NULL)); | ev_insert(concat(ignoreeofname, eql, off, (char *)NULL)); | |||
#ifdef USE_NLS | ||||
#if !defined(TEXT_DOMAIN) /* Should be defined by cc -D */ | ||||
#define TEXT_DOMAIN "bsh" /* Use this only if it weren't */ | ||||
#endif | ||||
{ char *dir; | ||||
dir = searchfileinpath("share/locale", F_OK, | ||||
SIP_ANY_FILE|SIP_NO_PATH, NULL); | ||||
if (dir) | ||||
(void) bindtextdomain(TEXT_DOMAIN, dir); | ||||
else | ||||
#if defined(PROTOTYPES) && defined(INS_BASE) | ||||
(void) bindtextdomain(TEXT_DOMAIN, INS_BASE "/share/locale"); | ||||
#else | ||||
(void) bindtextdomain(TEXT_DOMAIN, "/usr/share/locale"); | ||||
#endif | ||||
(void) textdomain(TEXT_DOMAIN); | ||||
} | ||||
#endif /* USE_NLS */ | ||||
inituser(); | inituser(); | |||
inithostname(); | inithostname(); | |||
initprompt(); | initprompt(); | |||
#ifdef INTERACTIVE | #ifdef INTERACTIVE | |||
init_input(); | init_input(); | |||
#else | #else | |||
inithistory(); | inithistory(); | |||
#endif | #endif | |||
osig2 = signal(SIGINT, (sigtype) SIG_IGN); | osig2 = signal(SIGINT, (sigtype) SIG_IGN); | |||
if (osig2 != (sigtype) SIG_IGN) | if (osig2 != (sigtype) SIG_IGN) | |||
skipping to change at line 920 | skipping to change at line 941 | |||
#endif | #endif | |||
if (hflg) | if (hflg) | |||
bshusage(FALSE, fbasename(initav0), (char *) NULL); | bshusage(FALSE, fbasename(initav0), (char *) NULL); | |||
if (prversion) { | if (prversion) { | |||
extern int MVERSION; | extern int MVERSION; | |||
extern int mVERSION; | extern int mVERSION; | |||
extern char dVERSION[]; | extern char dVERSION[]; | |||
printf("bsh %d.%02d %s (%s-%s-%s)\n\n", MVERSION, mVERSION, dVERS ION, | printf("bsh %d.%02d %s (%s-%s-%s)\n\n", MVERSION, mVERSION, dVERS ION, | |||
HOST_CPU, HOST_VENDOR, HOST_OS); | HOST_CPU, HOST_VENDOR, HOST_OS); | |||
printf("Copyright (C) 1982, 1984, 1985, 1988-1989, 1991, 1994-202 | printf("Copyright (C) 1982, 1984, 1985, 1988-1989, 1991, 1994-202 | |||
0 Jörg Schilling\n"); | 1 %s\n", | |||
_("Jörg Schilling")); | ||||
printf("This is free software; see the source for copying conditi ons. There is NO\n"); | printf("This is free software; see the source for copying conditi ons. There is NO\n"); | |||
printf("warranty; not even for MERCHANTABILITY or FITNESS FOR A P ARTICULAR PURPOSE.\n"); | printf("warranty; not even for MERCHANTABILITY or FITNESS FOR A P ARTICULAR PURPOSE.\n"); | |||
exit(0); | exit(0); | |||
} | } | |||
if (be_fast) | if (be_fast) | |||
(*no_i2flg)++, no_histflg++; | (*no_i2flg)++, no_histflg++; | |||
if (be_xfast) | if (be_xfast) | |||
(*no_i2flg)++, no_histflg++, (*no_gaflg)++, (*no_laflg)++; | (*no_i2flg)++, no_histflg++, (*no_gaflg)++, (*no_laflg)++; | |||
if (cflg && streql(fbasename(initav0), commandname)) | if (cflg && streql(fbasename(initav0), commandname)) | |||
(*no_i2flg)++; | (*no_i2flg)++; | |||
End of changes. 6 change blocks. | ||||
5 lines changed or deleted | 27 lines changed or added |