diff --git a/src/com/android/browser/SuggestionsAdapter.java b/src/com/android/browser/SuggestionsAdapter.java
index 18a48b0..8ab78e2 100644
--- a/src/com/android/browser/SuggestionsAdapter.java
+++ b/src/com/android/browser/SuggestionsAdapter.java
@@ -212,7 +212,9 @@
             List<SuggestItem> results = new ArrayList<SuggestItem>();
             int count = cursor.getCount();
             for (int i = 0; i < count; i++) {
-                results.add(cursor.getItem());
+                SuggestItem item = cursor.getItem();
+                if(item != null)
+                    results.add(item);
                 cursor.moveToNext();
             }
             cursor.close();
@@ -306,7 +308,9 @@
                 maxLines -= n;
                 boolean more = false;
                 for (int j = 0; j < n; j++) {
-                    results.add(s.getItem());
+                    SuggestItem item = s.getItem();
+                    if(item != null)
+                        results.add(item);
                     more = s.moveToNext();
                 }
             }
