fix using “-m” on the command line; spotted by G.raud <graud@gmx.com> on ML
authortg <tg@mirbsd.org>
Tue, 8 May 2018 17:37:37 +0000 (17:37 +0000)
committertg <tg@mirbsd.org>
Tue, 8 May 2018 17:37:37 +0000 (17:37 +0000)
check.t
jobs.c
main.c
sh.h

diff --git a/check.t b/check.t
index 47f10b5..b94036b 100644 (file)
--- a/check.t
+++ b/check.t
@@ -1,4 +1,4 @@
-# $MirOS: src/bin/mksh/check.t,v 1.804 2018/05/07 00:07:18 tg Exp $
+# $MirOS: src/bin/mksh/check.t,v 1.805 2018/05/08 17:37:33 tg Exp $
 # -*- mode: sh -*-
 #-
 # Copyright © 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
@@ -30,7 +30,7 @@
 # (2013/12/02 20:39:44) http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/regress/bin/ksh/?sortby=date
 
 expected-stdout:
-       @(#)MIRBSD KSH R56 2018/05/07
+       @(#)MIRBSD KSH R56 2018/05/08
 description:
        Check base version of full shell
 stdin:
@@ -39,7 +39,7 @@ name: KSH_VERSION
 category: !shell:legacy-yes
 ---
 expected-stdout:
-       @(#)LEGACY KSH R56 2018/05/07
+       @(#)LEGACY KSH R56 2018/05/08
 description:
        Check base version of legacy shell
 stdin:
diff --git a/jobs.c b/jobs.c
index a0b9b79..9a47da6 100644 (file)
--- a/jobs.c
+++ b/jobs.c
@@ -23,7 +23,7 @@
 
 #include "sh.h"
 
-__RCSID("$MirOS: src/bin/mksh/jobs.c,v 1.125 2018/01/05 20:08:34 tg Exp $");
+__RCSID("$MirOS: src/bin/mksh/jobs.c,v 1.126 2018/05/08 17:37:35 tg Exp $");
 
 #if HAVE_KILLPG
 #define mksh_killpg            killpg
@@ -169,12 +169,6 @@ static void tty_init_state(void);
 void
 j_init(void)
 {
-#ifndef MKSH_UNEMPLOYED
-       bool mflagset = Flag(FMONITOR) != 127;
-
-       Flag(FMONITOR) = 0;
-#endif
-
 #ifndef MKSH_NOPROSPECTOFWORK
        (void)sigemptyset(&sm_default);
        sigprocmask(SIG_SETMASK, &sm_default, NULL);
@@ -190,8 +184,8 @@ j_init(void)
 #endif
 
 #ifndef MKSH_UNEMPLOYED
-       if (!mflagset && Flag(FTALKING))
-               Flag(FMONITOR) = 1;
+       if (Flag(FMONITOR) == 127)
+               Flag(FMONITOR) = Flag(FTALKING);
 
        /*
         * shl_j is used to do asynchronous notification (used in
diff --git a/main.c b/main.c
index f6a8efe..fbae4b2 100644 (file)
--- a/main.c
+++ b/main.c
@@ -34,7 +34,7 @@
 #include <locale.h>
 #endif
 
-__RCSID("$MirOS: src/bin/mksh/main.c,v 1.348 2018/04/27 16:54:45 tg Exp $");
+__RCSID("$MirOS: src/bin/mksh/main.c,v 1.349 2018/05/08 17:37:36 tg Exp $");
 
 #ifndef MKSHRC_PATH
 #define MKSHRC_PATH    "~/.mkshrc"
@@ -457,7 +457,7 @@ main_init(int argc, const char *argv[], Source **sp, struct block **lp)
        /* Set this before parsing arguments */
        Flag(FPRIVILEGED) = (kshuid != ksheuid || kshgid != kshegid) ? 2 : 0;
 
-       /* this to note if monitor is set on command line (see below) */
+       /* record if monitor is set on command line (see j_init() in jobs.c) */
 #ifndef MKSH_UNEMPLOYED
        Flag(FMONITOR) = 127;
 #endif
diff --git a/sh.h b/sh.h
index a07229d..de6599e 100644 (file)
--- a/sh.h
+++ b/sh.h
 #endif
 
 #ifdef EXTERN
-__RCSID("$MirOS: src/bin/mksh/sh.h,v 1.861 2018/05/07 00:07:21 tg Exp $");
+__RCSID("$MirOS: src/bin/mksh/sh.h,v 1.862 2018/05/08 17:37:37 tg Exp $");
 #endif
-#define MKSH_VERSION "R56 2018/05/07"
+#define MKSH_VERSION "R56 2018/05/08"
 
 /* arithmetic types: C implementation */
 #if !HAVE_CAN_INTTYPES