Index: /trunk/src/org/openstreetmap/josm/data/osm/NoteData.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/osm/NoteData.java	(revision 9212)
+++ /trunk/src/org/openstreetmap/josm/data/osm/NoteData.java	(revision 9213)
@@ -93,8 +93,10 @@
     public NoteData(Collection<Note> notes) {
         noteList = new Storage<>();
-        for (Note note : notes) {
-            noteList.add(note);
-            if (note.getId() <= newNoteId) {
-                newNoteId = note.getId() - 1;
+        if (notes != null) {
+            for (Note note : notes) {
+                noteList.add(note);
+                if (note.getId() <= newNoteId) {
+                    newNoteId = note.getId() - 1;
+                }
             }
         }
Index: /trunk/test/unit/org/openstreetmap/josm/data/osm/NoteDataTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/data/osm/NoteDataTest.java	(revision 9213)
+++ /trunk/test/unit/org/openstreetmap/josm/data/osm/NoteDataTest.java	(revision 9213)
@@ -0,0 +1,27 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.data.osm;
+
+import static org.junit.Assert.assertEquals;
+
+import java.util.Arrays;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.coor.LatLon;
+import org.openstreetmap.josm.data.notes.Note;
+
+/**
+ * Unit tests of the {@code NoteData} class.
+ */
+public class NoteDataTest {
+
+    /**
+     * Unit test for {@link NoteData#NoteData}
+     */
+    @Test
+    public void testNoteData() {
+        NoteData empty = new NoteData(null);
+        assertEquals(0, empty.getNotes().size());
+        NoteData notEmpty = new NoteData(Arrays.asList(new Note(LatLon.ZERO)));
+        assertEquals(1, notEmpty.getNotes().size());
+    }
+}
