Fixing crash when dragging and dropping a restored widget.

> When the widget is in pending state, AppWidgetProviderInfo is not available

Bug: 19364311
Change-Id: If3126a375853e6e710c6eba4b8824e18f3f0d391
diff --git a/src/com/android/launcher3/LauncherAppWidgetHostView.java b/src/com/android/launcher3/LauncherAppWidgetHostView.java
index 2d04df2..954d2d7 100644
--- a/src/com/android/launcher3/LauncherAppWidgetHostView.java
+++ b/src/com/android/launcher3/LauncherAppWidgetHostView.java
@@ -145,9 +145,9 @@
     @Override
     public AppWidgetProviderInfo getAppWidgetInfo() {
         AppWidgetProviderInfo info = super.getAppWidgetInfo();
-        if (!(info instanceof LauncherAppWidgetProviderInfo)) {
+        if (info != null && !(info instanceof LauncherAppWidgetProviderInfo)) {
             throw new IllegalStateException("Launcher widget must have"
-                    + "LauncherAppWidgetProviderInfo");
+                    + " LauncherAppWidgetProviderInfo");
         }
         return info;
     }
diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java
index 44d7757..69fa457 100644
--- a/src/com/android/launcher3/Workspace.java
+++ b/src/com/android/launcher3/Workspace.java
@@ -3166,9 +3166,8 @@
                         // in its final location
 
                         final LauncherAppWidgetHostView hostView = (LauncherAppWidgetHostView) cell;
-                        LauncherAppWidgetProviderInfo pInfo = (LauncherAppWidgetProviderInfo)
-                                hostView.getAppWidgetInfo();
-                        if (pInfo.resizeMode != AppWidgetProviderInfo.RESIZE_NONE) {
+                        AppWidgetProviderInfo pInfo = hostView.getAppWidgetInfo();
+                        if (pInfo != null && pInfo.resizeMode != AppWidgetProviderInfo.RESIZE_NONE) {
                             final Runnable addResizeFrame = new Runnable() {
                                 public void run() {
                                     DragLayer dragLayer = mLauncher.getDragLayer();