diff options
Diffstat (limited to 'du.c')
-rw-r--r-- | du.c | 11 |
1 files changed, 7 insertions, 4 deletions
@@ -125,6 +125,7 @@ static long du(char *filename) | |||
125 | 125 | ||
126 | int du_main(int argc, char **argv) | 126 | int du_main(int argc, char **argv) |
127 | { | 127 | { |
128 | int status = EXIT_SUCCESS; | ||
128 | int i; | 129 | int i; |
129 | int c; | 130 | int c; |
130 | 131 | ||
@@ -147,12 +148,14 @@ int du_main(int argc, char **argv) | |||
147 | 148 | ||
148 | /* go through remaining args (if any) */ | 149 | /* go through remaining args (if any) */ |
149 | if (optind >= argc) { | 150 | if (optind >= argc) { |
150 | du("."); | 151 | if (du(".") == 0) |
152 | status = EXIT_FAILURE; | ||
151 | } else { | 153 | } else { |
152 | long sum; | 154 | long sum; |
153 | 155 | ||
154 | for (i=optind; i < argc; i++) { | 156 | for (i=optind; i < argc; i++) { |
155 | sum = du(argv[i]); | 157 | if (du(argv[i]) == 0) |
158 | status = EXIT_FAILURE; | ||
156 | if (sum && isDirectory(argv[i], FALSE, NULL)) { | 159 | if (sum && isDirectory(argv[i], FALSE, NULL)) { |
157 | print_normal(sum, argv[i]); | 160 | print_normal(sum, argv[i]); |
158 | } | 161 | } |
@@ -160,10 +163,10 @@ int du_main(int argc, char **argv) | |||
160 | } | 163 | } |
161 | } | 164 | } |
162 | 165 | ||
163 | return EXIT_SUCCESS; | 166 | return status; |
164 | } | 167 | } |
165 | 168 | ||
166 | /* $Id: du.c,v 1.26 2000/12/01 02:55:13 kraai Exp $ */ | 169 | /* $Id: du.c,v 1.27 2000/12/06 15:55:23 kraai Exp $ */ |
167 | /* | 170 | /* |
168 | Local Variables: | 171 | Local Variables: |
169 | c-file-style: "linux" | 172 | c-file-style: "linux" |