Merge "Import translations. DO NOT MERGE" into jb-dev
diff --git a/services/java/com/android/server/net/NetworkPolicyManagerService.java b/services/java/com/android/server/net/NetworkPolicyManagerService.java
index d4e9cbc..fe43d11 100644
--- a/services/java/com/android/server/net/NetworkPolicyManagerService.java
+++ b/services/java/com/android/server/net/NetworkPolicyManagerService.java
@@ -225,6 +225,7 @@
     private static final int MSG_LIMIT_REACHED = 5;
     private static final int MSG_RESTRICT_BACKGROUND_CHANGED = 6;
     private static final int MSG_ADVISE_PERSIST_THRESHOLD = 7;
+    private static final int MSG_SCREEN_ON_CHANGED = 8;
 
     private final Context mContext;
     private final IActivityManager mActivityManager;
@@ -349,7 +350,7 @@
         final IntentFilter screenFilter = new IntentFilter();
         screenFilter.addAction(Intent.ACTION_SCREEN_ON);
         screenFilter.addAction(Intent.ACTION_SCREEN_OFF);
-        mContext.registerReceiver(mScreenReceiver, screenFilter, null, mHandler);
+        mContext.registerReceiver(mScreenReceiver, screenFilter);
 
         // watch for network interfaces to be claimed
         final IntentFilter connFilter = new IntentFilter(CONNECTIVITY_ACTION_IMMEDIATE);
@@ -411,7 +412,7 @@
             synchronized (mRulesLock) {
                 // screen-related broadcasts are protected by system, no need
                 // for permissions check.
-                updateScreenOn();
+                mHandler.obtainMessage(MSG_SCREEN_ON_CHANGED).sendToTarget();
             }
         }
     };
@@ -1878,6 +1879,10 @@
                     }
                     return true;
                 }
+                case MSG_SCREEN_ON_CHANGED: {
+                    updateScreenOn();
+                    return true;
+                }
                 default: {
                     return false;
                 }