Merge "Fix rendering issue with layers."
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp
index 0f0316f..855a4e0 100644
--- a/libs/hwui/OpenGLRenderer.cpp
+++ b/libs/hwui/OpenGLRenderer.cpp
@@ -240,14 +240,14 @@
     mSaveCount--;
     mSnapshot = previous;
 
-    if (restoreLayer) {
-        composeLayer(current, previous);
-    }
-
     if (restoreClip) {
         dirtyClip();
     }
 
+    if (restoreLayer) {
+        composeLayer(current, previous);
+    }
+
     return restoreClip;
 }
 
@@ -447,6 +447,7 @@
     inverse.mapRect(clip);
     clip.snapToPixelBoundaries();
     clip.intersect(bounds);
+    clip.translate(-bounds.left, -bounds.top);
 
     snapshot->flags |= Snapshot::kFlagIsFboLayer;
     snapshot->fbo = layer->fbo;
diff --git a/tests/HwAccelerationTest/AndroidManifest.xml b/tests/HwAccelerationTest/AndroidManifest.xml
index 196b0eb..7f3a968 100644
--- a/tests/HwAccelerationTest/AndroidManifest.xml
+++ b/tests/HwAccelerationTest/AndroidManifest.xml
@@ -17,6 +17,8 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="com.android.test.hwui">
 
+    <uses-permission android:name="android.permission.INTERNET" />    
+    
     <application
         android:label="HwUi"
         android:hardwareAccelerated="true">