aboutsummaryrefslogtreecommitdiff
path: root/toys/posix/uudecode.c
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2017-04-03 14:12:08 -0700
committerRob Landley <rob@landley.net>2017-04-10 15:20:00 -0500
commit0956d16785fd8df1a57d8bf063cddd5b5c1ec221 (patch)
tree5bf256cebe0287e5c7703dba46163dfb3d0330ef /toys/posix/uudecode.c
parentfea6d56777a3063b5af8b262df2a4a2573142962 (diff)
downloadtoybox-0956d16785fd8df1a57d8bf063cddd5b5c1ec221.tar.gz
Add "uudecode -o -" support.
busybox uudecode supports this, and POSIX explicitly mentions it (albeit only in the "STDOUT" section). Plus Android doesn't have /dev/stdout and /dev/stdin, so this lets us rewrite the uudecode tests so they pass on Android too.
Diffstat (limited to 'toys/posix/uudecode.c')
-rw-r--r--toys/posix/uudecode.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/toys/posix/uudecode.c b/toys/posix/uudecode.c
index 238e27e9..4d2861af 100644
--- a/toys/posix/uudecode.c
+++ b/toys/posix/uudecode.c
@@ -41,7 +41,8 @@ void uudecode_main(void)
}
}
- ofd = xcreate(TT.o ? TT.o : line+idx, O_WRONLY|O_CREAT|O_TRUNC,
+ if (TT.o && !strcmp(TT.o, "-")) ofd = 1;
+ else ofd = xcreate(TT.o ? TT.o : line+idx, O_WRONLY|O_CREAT|O_TRUNC,
string_to_mode(mode, 0777^toys.old_umask));
for(;;) {