Workarounds for a couple crashes. (Bug 5612584, Bug 5613438)

Change-Id: I9669d830a10cc98291737f3f1d561c846c408289
diff --git a/src/com/android/launcher2/PagedView.java b/src/com/android/launcher2/PagedView.java
index 14ef53f..49c25b5 100644
--- a/src/com/android/launcher2/PagedView.java
+++ b/src/com/android/launcher2/PagedView.java
@@ -752,17 +752,18 @@
             getVisiblePages(mTempVisiblePagesRange);
             final int leftScreen = mTempVisiblePagesRange[0];
             final int rightScreen = mTempVisiblePagesRange[1];
+            if (leftScreen != -1 && rightScreen != -1) {
+                final long drawingTime = getDrawingTime();
+                // Clip to the bounds
+                canvas.save();
+                canvas.clipRect(mScrollX, mScrollY, mScrollX + mRight - mLeft,
+                        mScrollY + mBottom - mTop);
 
-            final long drawingTime = getDrawingTime();
-            // Clip to the bounds
-            canvas.save();
-            canvas.clipRect(mScrollX, mScrollY, mScrollX + mRight - mLeft,
-                    mScrollY + mBottom - mTop);
-
-            for (int i = rightScreen; i >= leftScreen; i--) {
-                drawChild(canvas, getPageAt(i), drawingTime);
+                for (int i = rightScreen; i >= leftScreen; i--) {
+                    drawChild(canvas, getPageAt(i), drawingTime);
+                }
+                canvas.restore();
             }
-            canvas.restore();
         }
     }