Commit 2f3c8609 authored by Jan-Erik Rediger's avatar Jan-Erik Rediger Committed by antirez
Browse files

Only ignore sigpipe in interactive mode

This allows shell pipes to correctly end redis-cli.

Ref #2066
parent 0c211a19
...@@ -1915,8 +1915,6 @@ int main(int argc, char **argv) { ...@@ -1915,8 +1915,6 @@ int main(int argc, char **argv) {
argc -= firstarg; argc -= firstarg;
argv += firstarg; argv += firstarg;
signal(SIGPIPE, SIG_IGN);
/* Latency mode */ /* Latency mode */
if (config.latency_mode) { if (config.latency_mode) {
if (cliConnect(0) == REDIS_ERR) exit(1); if (cliConnect(0) == REDIS_ERR) exit(1);
...@@ -1965,6 +1963,9 @@ int main(int argc, char **argv) { ...@@ -1965,6 +1963,9 @@ int main(int argc, char **argv) {
/* Start interactive mode when no command is provided */ /* Start interactive mode when no command is provided */
if (argc == 0 && !config.eval) { if (argc == 0 && !config.eval) {
/* Ignore SIGPIPE in interactive mode to force a reconnect */
signal(SIGPIPE, SIG_IGN);
/* Note that in repl mode we don't abort on connection error. /* Note that in repl mode we don't abort on connection error.
* A new attempt will be performed for every command send. */ * A new attempt will be performed for every command send. */
cliConnect(0); cliConnect(0);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment