Re: (Simple) Basic Design Flaw in make menuconfig GUI

From: Jan-Benedict Glaw
Date: Wed Sep 03 2003 - 12:08:47 EST


On Wed, 2003-09-03 08:33:34 -0700, Randy.Dunlap <rddunlap@xxxxxxxx>
wrote in message <20030903083334.6a98a4f5.rddunlap@xxxxxxxx>:
> On Wed, 3 Sep 2003 10:40:17 -0400 "Stevo" <stevo@xxxxxxxxxxx> wrote:
>
> | PROBLEM: (ocassionally) While I am speeding through the kernel
> | configuration, I will accidentally hit the "Esc" key one too many times (I'm
> | sure we've all done this) and it will leave me at the "exit" screen:

> | can someone please add one more simple choice to the "exit" menu?
>
> Yes, I've needed that choice at times also.

Like this?


--- linux-2.6.0-test4-bk5/scripts/kconfig/mconf.c.jbglaw 2003-09-03 18:28:06.000000000 +0200
+++ linux-2.6.0-test4-bk5/scripts/kconfig/mconf.c 2003-09-03 19:00:31.000000000 +0200
@@ -773,27 +773,56 @@
tcgetattr(1, &ios_org);
atexit(conf_cleanup);
init_wsize();
- conf(&rootmenu);

- do {
- cprint_init();
- cprint("--yesno");
- cprint("Do you wish to save your new kernel configuration?");
- cprint("5");
- cprint("60");
- stat = exec_conf();
- } while (stat < 0);
-
- if (stat == 0) {
- conf_write(NULL);
- printf("\n\n"
- "*** End of Linux kernel configuration.\n"
- "*** Execute 'make' to build the kernel or try 'make help'."
- "\n\n");
- } else
- printf("\n\n"
- "Your kernel configuration changes were NOT saved."
- "\n\n");
+ while (1) {
+ /*
+ * Config dialog
+ */
+ conf(&rootmenu);
+
+ /*
+ * Really quit?
+ */
+ do {
+ cprint_init();
+ cprint("--title");
+ cprint("Save configuration");
+ cprint("--radiolist");
+ cprint(radiolist_instructions);
+ cprint("15");
+ cprint("70");
+ cprint("6");
+
+ cprint("continue");
+ cprint("Continue with configuation");
+ cprint("ON");
+
+ cprint("save");
+ cprint("Save .config and exit");
+ cprint("OFF");
+
+ cprint("exit");
+ cprint("Don't save .config and exit");
+ cprint("OFF");
+
+ stat = exec_conf();
+ } while (stat < 0);
+
+ if(!strcmp(input_buf, "save")) {
+ conf_write(NULL);
+ printf("\n\n"
+ "*** End of Linux kernel configuration.\n"
+ "*** Execute 'make' to build the kernel or try 'make help'."
+ "\n\n");
+ return 0;
+ }
+ if(!strcmp(input_buf, "exit")) {
+ printf("\n\n"
+ "Your kernel configuration changes were NOT saved."
+ "\n\n");
+ return 0;
+ }
+ }

return 0;
}



MfG, JBG

--
Jan-Benedict Glaw jbglaw@xxxxxxxxxx . +49-172-7608481
"Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg
fuer einen Freien Staat voll Freier Bürger" | im Internet! | im Irak!
ret = do_actions((curr | FREE_SPEECH) & ~(IRAQ_WAR_2 | DRM | TCPA));

Attachment: pgp00001.pgp
Description: PGP signature