svn commit: r321171 - head/bin/sh

Jilles Tjoelker jilles at FreeBSD.org
Tue Jul 18 19:00:17 UTC 2017


Author: jilles
Date: Tue Jul 18 19:00:15 2017
New Revision: 321171
URL: https://svnweb.freebsd.org/changeset/base/321171

Log:
  sh: Remove broken #ifdef NOHACK code (related to sh -c).
  
  Apart from the fact that subtle syntactic changes make a poor compile-time
  option, the NOHACK case has been obviously broken since it was added,
  because it uses q uninitialized if (*p != '\0').
  
  No functional change is intended.

Modified:
  head/bin/sh/options.c

Modified: head/bin/sh/options.c
==============================================================================
--- head/bin/sh/options.c	Tue Jul 18 18:56:51 2017	(r321170)
+++ head/bin/sh/options.c	Tue Jul 18 19:00:15 2017	(r321171)
@@ -191,16 +191,11 @@ options(int cmdline)
 		while ((c = *p++) != '\0') {
 			if (c == 'c' && cmdline) {
 				char *q;
-#ifdef NOHACK	/* removing this code allows sh -ce 'foo' for compat */
-				if (*p == '\0')
-#endif
-					q = *argptr++;
+
+				q = *argptr++;
 				if (q == NULL || minusc != NULL)
 					error("Bad -c option");
 				minusc = q;
-#ifdef NOHACK
-				break;
-#endif
 			} else if (c == 'o') {
 				minus_o(*argptr, val);
 				if (*argptr)


More information about the svn-src-all mailing list