File less-429-shell.patch of Package less
Index: filename.c
===================================================================
--- filename.c.orig
+++ filename.c
@@ -585,7 +585,7 @@ shellcmd(cmd)
#if HAVE_SHELL
char *shell;
- shell = lgetenv("SHELL");
+ shell = lgetenv("LESSSHELL");
if (shell != NULL && *shell != '\0')
{
char *scmd;
Index: less.hlp
===================================================================
--- less.hlp.orig
+++ less.hlp
@@ -99,7 +99,7 @@
___<_n_a_m_e_> Display the setting of an option, by name.
+_c_m_d Execute the less cmd each time a new file is examined.
- !_c_o_m_m_a_n_d Execute the shell command with $SHELL.
+ !_c_o_m_m_a_n_d Execute the shell command with $LESSSHELL.
|XX_c_o_m_m_a_n_d Pipe file between current pos & mark XX to shell command.
s _f_i_l_e Save input to a file.
v Edit the current file with $VISUAL or $EDITOR.
Index: less.nro
===================================================================
--- less.nro.orig
+++ less.nro
@@ -411,7 +411,7 @@ current file.
A pound sign (#) is replaced by the name of the previously examined file.
"!!" repeats the last shell command.
"!" with no shell command simply invokes a shell.
-On Unix systems, the shell is taken from the environment variable SHELL,
+On Unix systems, the shell is taken from the environment variable LESSSHELL,
or defaults to "sh".
On MS-DOS and OS/2 systems, the shell is the normal command processor.
.IP "| <m> shell-command"
@@ -1732,7 +1732,7 @@ compatible mode.
.IP PATH
User's search path (used to find a lesskey file
on MS-DOS and OS/2 systems).
-.IP SHELL
+.IP LESSSHELL
The shell used to execute the ! command, as well as to expand filenames.
.IP TERM
The type of terminal on which
Index: lsystem.c
===================================================================
--- lsystem.c.orig
+++ lsystem.c
@@ -128,7 +128,7 @@ lsystem(cmd, donemsg)
*/
#if HAVE_SHELL
p = NULL;
- if ((shell = lgetenv("SHELL")) != NULL && *shell != '\0')
+ if ((shell = lgetenv("LESSSHELL")) != NULL && *shell != '\0')
{
if (*cmd == '\0')
p = save(shell);