diff --git a/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java b/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java
index 3dedcdfd1b..cf5ddb9f3c 100644
--- a/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java
+++ b/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java
@@ -407,7 +407,12 @@ public class NotesDialog extends ToggleDialog implements LayerChangeListener, No
             if (note != null) {
                 int selectedIndex = displayList.getSelectedIndex();
                 noteData.closeNote(note, dialog.getInputText());
-                noteData.setSelectedNote(model.getElementAt(selectedIndex));
+                // This is required since filtering may cause the model
+                if (model.getSize() > 0) {
+                    noteData.setSelectedNote(model.getElementAt(selectedIndex));
+                } else {
+                    noteData.setSelectedNote(null);
+                }
             }
         }
     }
