reassign 407577 cdebconf retitle 407577 cdebconf: frontend crashes on GoBack from user-setup thanks (Please keep the title of the bug in the subject of mails; that helps to recognize what they are about!) On Wednesday 24 January 2007 18:16, Attilio Fiandrotti wrote: > I noticed that this bug can be reproduced the way frans suggested iff > the installer is run at priorities high or critical (low or med don't > do). > > Another way to reproduce this bug is entering disagreeing passwords, > pressing <Ok> and then <Back>. I have just tested how the newt frontend behaves in this case, and that can be made to crash too, with basically the same behavior. Note that in the newt frontend the password and confirmation questions (and the error) are displayed as separate dialogs. - First time, I enter nothing in the password and the confirmation dialogs, after which the "empty password" error is shown - If I choose <Go back> _at that error dialog_, the frontend crashes So, I'm now guessing this is a general debconf issue, and not a gtk frontend issue. The log for user-setup with "DEBCONF_DEBUG=." shows: <snip> Jan 25 03:28:00 main-menu[1079]: INFO: Menu item 'user-setup-udeb' selected Jan 25 03:28:00 debconf: --> SETTITLE debian-installer/user-setup-udeb/title Jan 25 03:28:00 debconf: <-- 0 OK Jan 25 03:28:00 debconf: --> CAPB backup Jan 25 03:28:00 debconf: <-- 0 multiselect backup progresscancel Jan 25 03:28:00 debconf: --> INPUT low passwd/shadow Jan 25 03:28:00 debconf: Comparing priorities low (0) with high (2) Jan 25 03:28:00 debconf: <-- 30 question skipped Jan 25 03:28:00 debconf: --> INPUT medium passwd/root-login Jan 25 03:28:00 debconf: Comparing priorities medium (1) with high (2) Jan 25 03:28:00 debconf: <-- 30 question skipped Jan 25 03:28:00 debconf: --> GO Jan 25 03:28:00 debconf: <-- 0 ok Jan 25 03:28:00 debconf: --> GET passwd/root-login Jan 25 03:28:00 debconf: <-- 0 true Jan 25 03:28:00 debconf: --> GET passwd/root-password-crypted Jan 25 03:28:00 debconf: <-- 0 Jan 25 03:28:00 debconf: --> SET passwd/root-password-crypted Jan 25 03:28:00 debconf: rfc822db_question_remove(db,tag=passwd/root-password-crypted) Jan 25 03:28:00 debconf: rfc822db_question_set(db,q=passwd/root-password-crypted,q=0x8d53218) Jan 25 03:28:00 debconf: <-- 0 value set Jan 25 03:28:00 debconf: --> INPUT critical passwd/root-password Jan 25 03:28:00 debconf: Comparing priorities critical (3) with high (2) Jan 25 03:28:00 debconf: <-- 0 question will be asked Jan 25 03:28:00 debconf: --> INPUT critical passwd/root-password-again Jan 25 03:28:00 debconf: Comparing priorities critical (3) with high (2) Jan 25 03:28:00 debconf: <-- 0 question will be asked Jan 25 03:28:00 debconf: --> GO Jan 25 03:28:02 debconf: rfc822db_question_remove(db,tag=passwd/root-password) Jan 25 03:28:02 debconf: rfc822db_question_set(db,q=passwd/root-password,q=0x8d52f78) Jan 25 03:28:02 debconf: rfc822db_question_remove(db,tag=passwd/root-password-again) Jan 25 03:28:02 debconf: rfc822db_question_set(db,q=passwd/root-password-again,q=0x8d52ed0) Jan 25 03:28:02 debconf: <-- 0 ok Jan 25 03:28:03 debconf: --> GET passwd/root-login Jan 25 03:28:03 debconf: <-- 0 true Jan 25 03:28:03 debconf: --> GET passwd/root-password-crypted Jan 25 03:28:03 debconf: <-- 0 Jan 25 03:28:03 debconf: --> GET passwd/root-password Jan 25 03:28:03 debconf: <-- 0 Jan 25 03:28:03 debconf: --> FSET user-setup/password-empty seen false Jan 25 03:28:03 debconf: <-- 0 false Jan 25 03:28:03 debconf: --> INPUT critical user-setup/password-empty Jan 25 03:28:03 debconf: <-- 0 question will be asked Jan 25 03:28:03 debconf: --> FSET passwd/root-password seen false Jan 25 03:28:03 debconf: <-- 0 false Jan 25 03:28:03 debconf: --> FSET passwd/root-password-again seen false Jan 25 03:28:03 debconf: <-- 0 false Jan 25 03:28:03 debconf: --> GET passwd/root-login Jan 25 03:28:03 debconf: <-- 0 true Jan 25 03:28:03 debconf: --> GET passwd/root-password-crypted Jan 25 03:28:03 debconf: <-- 0 Jan 25 03:28:03 debconf: --> SET passwd/root-password-crypted Jan 25 03:28:03 debconf: rfc822db_question_remove(db,tag=passwd/root-password-crypted) Jan 25 03:28:03 debconf: rfc822db_question_set(db,q=passwd/root-password-crypted,q=0x8d53218) Jan 25 03:28:03 debconf: <-- 0 value set Jan 25 03:28:03 debconf: --> INPUT critical passwd/root-password Jan 25 03:28:03 debconf: Comparing priorities critical (3) with high (2) Jan 25 03:28:03 debconf: <-- 0 question will be asked Jan 25 03:28:03 debconf: --> INPUT critical passwd/root-password-again Jan 25 03:28:03 debconf: Comparing priorities critical (3) with high (2) Jan 25 03:28:03 debconf: <-- 0 question will be asked Jan 25 03:28:03 debconf: --> GO Jan 25 03:28:04 init: Process '/sbin/debian-installer' (pid 1032) exited. Scheduling it for restart. Jan 25 03:28:04 init: Starting pid 15234, console /dev/vc/1: '/sbin/debian-installer' </snip> In the newt frontend this also does not happen at medium/low priority: a <Go Back> at the error dialog nicely returns you to the "STATE=0" questions. The doubly weird thing is that there are two "STATE=0" questions, the first of which is also skipped at medium prio. The bug only seems to manifest itself if _both_ of these questions are skipped. The really, completely weird thing is that all debugging I've done shows that the crash happens _at_ the db_go, so the script never does go back to the STATE=0 case. It does not even do the error checking for the db_go. Some added logger statements in user-setup-ask show, at medium priority: [...] End STATE 1 Doing db_go From db_go: 30 New STATE: 0 Start STATE 0 End STATE 0 Doing db_go [...] While at high priority, this shows: [...] End STATE 1 Doing db_go init: Starting pid 15234, console /dev/vc/1: '/sbin/debian-installer' I hope that someone can make chocolate of this. Cheers, FJP
Attachment:
pgpX8QN5Ypa82.pgp
Description: PGP signature