summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2014-11-25 18:52:01 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-11-25 18:52:01 +0000
commit87fdfc718e9eccdd9c40e7bca7a48af40b6bf732 (patch)
tree54e8f5c881b4812b0c475027f3bf210390211169
parent276968f24c25924f0e08539f46a5ea0cd041b6f0 (diff)
parentcb321921fe04f6ccaeb56c4bf3e8965ee4764738 (diff)
downloadsystem_core-87fdfc718e9eccdd9c40e7bca7a48af40b6bf732.zip
system_core-87fdfc718e9eccdd9c40e7bca7a48af40b6bf732.tar.gz
system_core-87fdfc718e9eccdd9c40e7bca7a48af40b6bf732.tar.bz2
am cb321921: Merge "fastboot: add parameter for unbuffered stderr/stdout"
* commit 'cb321921fe04f6ccaeb56c4bf3e8965ee4764738': fastboot: add parameter for unbuffered stderr/stdout
-rw-r--r--fastboot/fastboot.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/fastboot/fastboot.c b/fastboot/fastboot.c
index 43d05aa..13425e6 100644
--- a/fastboot/fastboot.c
+++ b/fastboot/fastboot.c
@@ -988,6 +988,7 @@ int main(int argc, char **argv)
unsigned sz;
int status;
int c;
+ int longindex;
const struct option longopts[] = {
{"base", required_argument, 0, 'b'},
@@ -996,13 +997,14 @@ int main(int argc, char **argv)
{"ramdisk_offset", required_argument, 0, 'r'},
{"tags_offset", required_argument, 0, 't'},
{"help", 0, 0, 'h'},
+ {"unbuffered", 0, 0, 0},
{0, 0, 0, 0}
};
serial = getenv("ANDROID_SERIAL");
while (1) {
- c = getopt_long(argc, argv, "wub:k:n:r:t:s:S:lp:c:i:m:h", longopts, NULL);
+ c = getopt_long(argc, argv, "wub:k:n:r:t:s:S:lp:c:i:m:h", longopts, &longindex);
if (c < 0) {
break;
}
@@ -1063,6 +1065,12 @@ int main(int argc, char **argv)
break;
case '?':
return 1;
+ case 0:
+ if (strcmp("unbuffered", longopts[longindex].name) == 0) {
+ setvbuf(stdout, NULL, _IONBF, 0);
+ setvbuf(stderr, NULL, _IONBF, 0);
+ }
+ break;
default:
abort();
}