From 77d7bbd209a85455df18e464035a680748581417 Mon Sep 17 00:00:00 2001 From: Xin Li Date: Thu, 6 Jun 2019 11:30:03 -0700 Subject: preen should work independently with alwaysyes and alwaysno. Bug: 133725065 Merged-In: I903e6bd88e23b711153f226b4288fae7d694a7b5 Change-Id: I903e6bd88e23b711153f226b4288fae7d694a7b5 --- main.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/main.c b/main.c index 8425d8a..2b79cc0 100644 --- a/main.c +++ b/main.c @@ -87,16 +87,15 @@ main(int argc, char **argv) exit(5); case 'n': alwaysno = 1; - alwaysyes = preen = 0; + alwaysyes = 0; break; case 'y': alwaysyes = 1; - alwaysno = preen = 0; + alwaysno = 0; break; case 'p': preen = 1; - alwaysyes = alwaysno = 0; break; default: -- cgit v1.2.3 From 09980abea745ade1cee73d49a8e533643df62042 Mon Sep 17 00:00:00 2001 From: Xin Li Date: Sat, 15 Jun 2019 21:41:09 -0700 Subject: Sync with upstream 95647bc8: In ask(): override default option if any of alwaysyes/alwaysno/rdonly is set. Bug: 133725065 Merged-In: I1d9f5fe46aed85a9d374a9e91a0058a193f4cf43 Change-Id: I1d9f5fe46aed85a9d374a9e91a0058a193f4cf43 --- main.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/main.c b/main.c index 2b79cc0..6802afc 100644 --- a/main.c +++ b/main.c @@ -129,9 +129,10 @@ ask(int def, const char *fmt, ...) char prompt[256]; int c; + if (alwaysyes || alwaysno || rdonly) + def = (alwaysyes && !rdonly && !alwaysno); + if (preen) { - if (rdonly) - def = 0; if (def) printf("FIXED\n"); return def; @@ -140,9 +141,9 @@ ask(int def, const char *fmt, ...) va_start(ap, fmt); vsnprintf(prompt, sizeof(prompt), fmt, ap); va_end(ap); - if (alwaysyes || rdonly) { - printf("%s? %s\n", prompt, rdonly ? "no" : "yes"); - return !rdonly; + if (alwaysyes || alwaysno || rdonly) { + printf("%s? %s\n", prompt, def ? "yes" : "no"); + return def; } do { printf("%s? [yn] ", prompt); -- cgit v1.2.3