Merge branch 'jk/no-more-pre-exec-callback'
Removes a workaround for buggy version of less older than version 406. * jk/no-more-pre-exec-callback: pager: drop "wait for output to run less" hack
This commit is contained in:
commit
55ff630075
18
pager.c
18
pager.c
@ -11,21 +11,6 @@
|
|||||||
* something different on Windows.
|
* something different on Windows.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef WIN32
|
|
||||||
static void pager_preexec(void)
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
* Work around bug in "less" by not starting it until we
|
|
||||||
* have real input
|
|
||||||
*/
|
|
||||||
fd_set in;
|
|
||||||
|
|
||||||
FD_ZERO(&in);
|
|
||||||
FD_SET(0, &in);
|
|
||||||
select(1, &in, NULL, &in, NULL);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static const char *pager_argv[] = { NULL, NULL };
|
static const char *pager_argv[] = { NULL, NULL };
|
||||||
static struct child_process pager_process;
|
static struct child_process pager_process;
|
||||||
|
|
||||||
@ -93,9 +78,6 @@ void setup_pager(void)
|
|||||||
static const char *env[] = { "LESS=FRSX", NULL };
|
static const char *env[] = { "LESS=FRSX", NULL };
|
||||||
pager_process.env = env;
|
pager_process.env = env;
|
||||||
}
|
}
|
||||||
#ifndef WIN32
|
|
||||||
pager_process.preexec_cb = pager_preexec;
|
|
||||||
#endif
|
|
||||||
if (start_command(&pager_process))
|
if (start_command(&pager_process))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -397,16 +397,6 @@ fail_pipe:
|
|||||||
unsetenv(*cmd->env);
|
unsetenv(*cmd->env);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (cmd->preexec_cb) {
|
|
||||||
/*
|
|
||||||
* We cannot predict what the pre-exec callback does.
|
|
||||||
* Forgo parent notification.
|
|
||||||
*/
|
|
||||||
close(child_notifier);
|
|
||||||
child_notifier = -1;
|
|
||||||
|
|
||||||
cmd->preexec_cb();
|
|
||||||
}
|
|
||||||
if (cmd->git_cmd) {
|
if (cmd->git_cmd) {
|
||||||
execv_git_cmd(cmd->argv);
|
execv_git_cmd(cmd->argv);
|
||||||
} else if (cmd->use_shell) {
|
} else if (cmd->use_shell) {
|
||||||
|
@ -39,7 +39,6 @@ struct child_process {
|
|||||||
unsigned stdout_to_stderr:1;
|
unsigned stdout_to_stderr:1;
|
||||||
unsigned use_shell:1;
|
unsigned use_shell:1;
|
||||||
unsigned clean_on_exit:1;
|
unsigned clean_on_exit:1;
|
||||||
void (*preexec_cb)(void);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
int start_command(struct child_process *);
|
int start_command(struct child_process *);
|
||||||
|
Loading…
Reference in New Issue
Block a user