Index: src/org/openstreetmap/josm/io/DiffResultProcessor.java
===================================================================
--- src/org/openstreetmap/josm/io/DiffResultProcessor.java	(revision 19573)
+++ src/org/openstreetmap/josm/io/DiffResultProcessor.java	(working copy)
@@ -141,7 +141,11 @@
                 }
                 processed.add(p);
                 if (!p.isDeleted()) {
+                    boolean isNew = p.isNew();
                     p.setOsmId(entry.newId, entry.newVersion);
+                    if (isNew) {
+                        p.setReferrersDownloaded(true);
+                    }
                     p.setVisible(true);
                 } else {
                     p.setVisible(false);
Index: src/org/openstreetmap/josm/io/OsmApi.java
===================================================================
--- src/org/openstreetmap/josm/io/OsmApi.java	(revision 19573)
+++ src/org/openstreetmap/josm/io/OsmApi.java	(working copy)
@@ -421,6 +421,7 @@
     public void createPrimitive(IPrimitive osm, ProgressMonitor monitor) throws OsmTransferException {
         individualPrimitiveModification("PUT", "create", osm, monitor, ret -> {
             osm.setOsmId(Long.parseLong(ret.trim()), 1);
+            osm.setReferrersDownloaded(true);
             osm.setChangesetId(getChangeset().getId());
         }, ret -> tr("Unexpected format of ID replied by the server. Got ''{0}''.", ret));
     }
