Re: Freeze break exception for the new lock screen




From https://gitlab.gnome.org/GNOME/gnome-shell/commits/master/js/gdm, some telling examples of what could break:

"If the user fails to enter their password then hits escape, we
jump back to the user list, then ask again for a password in a
garbled screen. this commit fixes that by skipping a retry if
the operation is cancelled."

"If the user clicks Not Listed? to enter ask for username mode, clicks
cancel, and then attempts to log in via the user list, the user will see
"Authentication failed" after correctly typing the password, and then
will become stuck in an empty screen with just the gray noise background."

"The Next and Sign In buttons are disabled when the username/password
field is empty. However, the user can still bypass this button by
pressing the enter key, leading to some odd glitches with the log in
for 'Not Listed?' users."

"[I]f the user is currently in the user list and the account changes to locked, we
want to remove it from the list, or if the user is not in the list and
the account changed to unlocked, we want to add it to the list. This
fixes the case where a new user account created in gnome-control-center
does not appear in the user list."

"The user should be allowed to cancel if verification hasn't
started yet and they're typing in their username. This
commit changes the authPrompt cancel function to not
ignore such requests."

"Normally the user isn't allowed to proceed passed
the username question until they've filled it in.
To ensure this, the authprompt code desensitizes
the next button when the number of characters change to
zero. Unfortunately it fails to desensitize the next button
up front when the entry starts out empty."

"fixes a bug [...] that leads to the user session crashing when the login screen is reactivated"

"If the next button ever gets set to Sign In, it won't
get reset to next until the next question asked by pam. This commit ensures it gets reset to Next when asking
for the username."

"We currently only cancel the user verifier on reset if
verifying, but that means we don't properly cancel it when
asking for a username at the Not Listed screen."

There are many, many, many more like these. Sorry for sending so many mails to this thread, but I just happen to remember this is a particularly fragile portion of the codebase. We're a lot more stable nowadays then we were five years ago, so hopefully it will go fine, but there are lots and lots of corner cases to test. Be careful!




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]