Index: src/org/openstreetmap/josm/data/osm/OsmPrimitive.java
===================================================================
--- src/org/openstreetmap/josm/data/osm/OsmPrimitive.java	(revision 2568)
+++ src/org/openstreetmap/josm/data/osm/OsmPrimitive.java	(working copy)
@@ -887,20 +887,16 @@
         // Method copied from OsmPrimitive in josm-ng
         // Returns only referrers that are members of the same dataset (primitive can have some fake references, for example
         // when way is cloned
-        if (referrers == null)
-            return Collections.emptyList();
-
-        if (referrers instanceof OsmPrimitive) {
-            if (((OsmPrimitive)referrers).dataSet == dataSet)
-                return Collections.singletonList((OsmPrimitive)referrers);
-            else
-                return Collections.emptyList();
-        }
-
         List<OsmPrimitive> result = new ArrayList<OsmPrimitive>();
-        for (OsmPrimitive o:(OsmPrimitive[])referrers) {
-            if (dataSet == o.dataSet) {
-                result.add(o);
+        if (referrers != null) {
+            if ((referrers instanceof OsmPrimitive) && (((OsmPrimitive)referrers).dataSet == dataSet)) {
+                result.add((OsmPrimitive)referrers);
+            } else {
+                for (OsmPrimitive o:(OsmPrimitive[])referrers) {
+                    if (dataSet == o.dataSet) {
+                        result.add(o);
+                    }
+                }
             }
         }
 
