Index: trunk/src/org/openstreetmap/josm/data/osm/NoteData.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/NoteData.java	(revision 18008)
+++ trunk/src/org/openstreetmap/josm/data/osm/NoteData.java	(revision 18009)
@@ -224,8 +224,8 @@
             Logging.debug("closing note {0} with comment: {1}", note.getId(), text);
         }
-        NoteComment comment = new NoteComment(Instant.now(), getCurrentUser(), text, NoteComment.Action.CLOSED, true);
-        note.addComment(comment);
+        Instant now = Instant.now();
+        note.addComment(new NoteComment(now, getCurrentUser(), text, NoteComment.Action.CLOSED, true));
         note.setState(State.CLOSED);
-        note.setClosedAt(Instant.now());
+        note.setClosedAt(now);
         dataUpdated();
     }
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java	(revision 18008)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java	(revision 18009)
@@ -404,7 +404,9 @@
             }
             Note note = displayList.getSelectedValue();
-            int selectedIndex = displayList.getSelectedIndex();
-            noteData.closeNote(note, dialog.getInputText());
-            noteData.setSelectedNote(model.getElementAt(selectedIndex));
+            if (note != null) {
+                int selectedIndex = displayList.getSelectedIndex();
+                noteData.closeNote(note, dialog.getInputText());
+                noteData.setSelectedNote(model.getElementAt(selectedIndex));
+            }
         }
     }
