aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/builtin_jobs.cpp
diff options
context:
space:
mode:
authorGravatar Max Nordlund <max.nordlund@gmail.com>2015-11-25 14:37:48 +0100
committerGravatar ridiculousfish <corydoras@ridiculousfish.com>2015-12-03 20:59:12 -0800
commit2d90859cab220df375d2cfe69a527bff85cc2782 (patch)
tree1323b4fbfb6953bfea625098cc03e82cde57129a /src/builtin_jobs.cpp
parentd325b4bf393df78b98380233e50e8242748bb384 (diff)
Fix wrong exit code for `jobs` #2505
Diffstat (limited to 'src/builtin_jobs.cpp')
-rw-r--r--src/builtin_jobs.cpp28
1 files changed, 12 insertions, 16 deletions
diff --git a/src/builtin_jobs.cpp b/src/builtin_jobs.cpp
index 6f4b57a8..adb53788 100644
--- a/src/builtin_jobs.cpp
+++ b/src/builtin_jobs.cpp
@@ -254,15 +254,6 @@ static int builtin_jobs(parser_t &parser, io_streams_t &streams, wchar_t **argv)
}
}
-
- /*
- Do not babble if not interactive
- */
- if (streams.out_is_redirected)
- {
- found=1;
- }
-
if (print_last)
{
/*
@@ -275,7 +266,7 @@ static int builtin_jobs(parser_t &parser, io_streams_t &streams, wchar_t **argv)
if ((j->flags & JOB_CONSTRUCTED) && !job_is_completed(j))
{
- builtin_jobs_print(j, mode, !found, streams);
+ builtin_jobs_print(j, mode, !streams.out_is_redirected, streams);
return 0;
}
}
@@ -287,8 +278,6 @@ static int builtin_jobs(parser_t &parser, io_streams_t &streams, wchar_t **argv)
{
int i;
- found = 1;
-
for (i=w.woptind; i<argc; i++)
{
int pid;
@@ -307,7 +296,8 @@ static int builtin_jobs(parser_t &parser, io_streams_t &streams, wchar_t **argv)
if (j && !job_is_completed(j))
{
- builtin_jobs_print(j, mode, !found, streams);
+ builtin_jobs_print(j, mode, false, streams);
+ found = 1;
}
else
{
@@ -338,9 +328,15 @@ static int builtin_jobs(parser_t &parser, io_streams_t &streams, wchar_t **argv)
if (!found)
{
- streams.out.append_format(
- _(L"%ls: There are no jobs\n"),
- argv[0]);
+ /*
+ Do not babble if not interactive
+ */
+ if (streams.out_is_redirected)
+ {
+ streams.out.append_format(
+ _(L"%ls: There are no jobs\n"),
+ argv[0]);
+ }
return 1;
}