Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 27ded483 authored by Florian Bäuerle's avatar Florian Bäuerle Committed by Florian Bäuerle
Browse files

fastboot: add parameter for unbuffered stderr/stdout



This is useful for writing Windows GUIs that want to parse the output of
fastboot before it exits.

Change-Id: Ic0171fe379fc4db7b65b1501e5f2e771ac7c62c4
Signed-off-by: default avatarFlorian Bäuerle <florian.bae@gmail.com>
parent 7f187c5f
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -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();
        }