git: 35a6770dde02 - stable/14 - sh(1): -l is only valid in cli option not as set -l

From: Baptiste Daroussin <bapt_at_FreeBSD.org>
Date: Thu, 12 Dec 2024 16:03:50 UTC
The branch stable/14 has been updated by bapt:

URL: https://cgit.FreeBSD.org/src/commit/?id=35a6770dde027d85e6b9a9b6fd9f7d254a320ef3

commit 35a6770dde027d85e6b9a9b6fd9f7d254a320ef3
Author:     Baptiste Daroussin <bapt@FreeBSD.org>
AuthorDate: 2024-11-20 13:14:43 +0000
Commit:     Baptiste Daroussin <bapt@FreeBSD.org>
CommitDate: 2024-12-12 16:03:34 +0000

    sh(1): -l is only valid in cli option not as set -l
    
    (cherry picked from commit 0df81552d74d2c188a9323ffe18f6ebe799b86f9)
---
 bin/sh/options.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bin/sh/options.c b/bin/sh/options.c
index 43a8ee47411e..383f9523975d 100644
--- a/bin/sh/options.c
+++ b/bin/sh/options.c
@@ -200,7 +200,7 @@ options(int cmdline)
 				if (q == NULL || minusc != NULL)
 					error("Bad -c option");
 				minusc = q;
-			} else if (c == 'l') {
+			} else if (c == 'l' && cmdline) {
 				login = 1;
 			} else if (c == 'o') {
 				minus_o(*argptr, val);