diff --git a/src/com/android/settings/wifi/WifiConfigController.java b/src/com/android/settings/wifi/WifiConfigController.java
index a20e160..91f4110 100644
--- a/src/com/android/settings/wifi/WifiConfigController.java
+++ b/src/com/android/settings/wifi/WifiConfigController.java
@@ -207,11 +207,12 @@
                     mIpSettingsSpinner.setSelection(STATIC_IP);
                 } else {
                     mIpSettingsSpinner.setSelection(DHCP);
-                    //Display IP addresses
-                    for(InetAddress a : config.linkProperties.getAddresses()) {
-                        addRow(group, R.string.wifi_ip_address, a.getHostAddress());
-                    }
                 }
+                //Display IP addresses
+                for(InetAddress a : config.linkProperties.getAddresses()) {
+                    addRow(group, R.string.wifi_ip_address, a.getHostAddress());
+                }
+
 
                 if (config.proxySettings == ProxySettings.STATIC) {
                     mProxySettingsSpinner.setSelection(PROXY_STATIC);
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index 7e07162..ab5e686 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -509,6 +509,7 @@
                     WifiManager.EXTRA_NETWORK_INFO);
             mConnected.set(info.isConnected());
             changeNextButtonState(info.isConnected());
+            updateAccessPoints();
             updateConnectionState(info.getDetailedState());
         } else if (WifiManager.RSSI_CHANGED_ACTION.equals(action)) {
             updateConnectionState(null);
