summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2019-06-27 03:15:01 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2019-06-27 03:15:01 +0000
commit1c143cf977bf48adcc6c50ddcaa896207137ac85 (patch)
tree2a7a51fda3383a86848454a6e6473a3db6fdccc0
parent7a509b94526bce11e5b035af1356ce28c6c0a3fc (diff)
parent4eef244fcb822a91ce5df3eeb9d27719c328d2d5 (diff)
downloadfsck_msdos-android10-qpr1-b-release.tar.gz
Change-Id: I39fe25d27e142cc6f09815ef0c5cd63db287c5e8
-rw-r--r--main.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/main.c b/main.c
index 8425d8a..6802afc 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:
@@ -130,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;
@@ -141,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);