diff --git a/src/com/android/settings/wifi/WifiConfigController.java b/src/com/android/settings/wifi/WifiConfigController.java index fe2bbb34d6c..5fb650097b6 100644 --- a/src/com/android/settings/wifi/WifiConfigController.java +++ b/src/com/android/settings/wifi/WifiConfigController.java @@ -403,12 +403,13 @@ public class WifiConfigController implements TextWatcher, && ((mAccessPointSecurity == AccessPoint.SECURITY_WEP && mPasswordView.length() == 0) || (mAccessPointSecurity == AccessPoint.SECURITY_PSK - && mPasswordView.length() < 8))) { + && (mPasswordView.length() < 8 || mPasswordView.length() > 63)))) { passwordInvalid = true; } - if ((mSsidView != null && mSsidView.length() == 0) - || ((mAccessPoint == null || !mAccessPoint.isSaved()) && passwordInvalid)) { + || ((mAccessPoint == null || !mAccessPoint.isSaved()) && passwordInvalid + // If AccessPoint is saved (we're modifying it), allow zero length (unchanged) pw + || mAccessPoint.isSaved() && passwordInvalid && mPasswordView.length() > 0)) { enabled = false; } else { enabled = ipAndProxyFieldsAreValid();