diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java
index 67c42dd..b7cdcd4 100644
--- a/src/com/android/browser/Controller.java
+++ b/src/com/android/browser/Controller.java
@@ -1535,7 +1535,10 @@
                 break;
 
             case R.id.add_bookmark_menu_id:
-                mActivity.startActivity(createBookmarkCurrentPageIntent(false));
+                Intent bookmarkIntent = createBookmarkCurrentPageIntent(false);
+                if (bookmarkIntent != null) {
+                    mActivity.startActivity(bookmarkIntent);
+                }
                 break;
 
             case R.id.stop_reload_menu_id:
@@ -1856,9 +1859,12 @@
      */
     @Override
     public Intent createBookmarkCurrentPageIntent(boolean editExisting) {
+        WebView w = getCurrentTopWebView();
+        if (w == null) {
+            return null;
+        }
         Intent i = new Intent(mActivity,
                 AddBookmarkPage.class);
-        WebView w = getCurrentTopWebView();
         i.putExtra(BrowserContract.Bookmarks.URL, w.getUrl());
         i.putExtra(BrowserContract.Bookmarks.TITLE, w.getTitle());
         String touchIconUrl = w.getTouchIconUrl();
diff --git a/src/com/android/browser/NavigationBarTablet.java b/src/com/android/browser/NavigationBarTablet.java
index 8c08dcf..661ed71 100644
--- a/src/com/android/browser/NavigationBarTablet.java
+++ b/src/com/android/browser/NavigationBarTablet.java
@@ -20,6 +20,7 @@
 import android.animation.AnimatorSet;
 import android.animation.ObjectAnimator;
 import android.content.Context;
+import android.content.Intent;
 import android.content.res.Configuration;
 import android.content.res.Resources;
 import android.graphics.Bitmap;
@@ -161,7 +162,10 @@
         } else if (mForwardButton == v) {
             mUiController.getCurrentTab().goForward();
         } else if (mStar == v) {
-            getContext().startActivity(mUiController.createBookmarkCurrentPageIntent(true));
+            Intent intent = mUiController.createBookmarkCurrentPageIntent(true);
+            if (intent != null) {
+                getContext().startActivity(intent);
+            }
         } else if (mAllButton == v) {
             mUiController.bookmarksOrHistoryPicker(false);
         } else if (mSearchButton == v) {
