Changeset 226 in josm


Ignore:
Timestamp:
2007-05-06T16:28:53+02:00 (17 years ago)
Author:
imi
Message:
  • fixed MergeVisitor to not merge two segments with different id's
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • src/org/openstreetmap/josm/data/osm/visitor/MergeVisitor.java

    r224 r226  
    250250                if (ls1.id == ls2.id && ls1.id != 0)
    251251                        return true;
     252                //if (ls1.id != 0 && ls2.id != 0)
     253                //      return false;
    252254                if (ls1.incomplete || ls2.incomplete)
    253255                        return false;
     
    288290                if (other.keys == null)
    289291                        return;
    290                 if (my.keySet().containsAll(other.keys.entrySet()))
     292                if (my.keySet().containsAll(other.keys.keySet()))
    291293                        return;
    292294                if (my.keys == null)
  • test/org/openstreetmap/josm/data/osm/visitor/MergeVisitorTest.java

    r224 r226  
    350350                assertEquals(23, ds.segments.iterator().next().id);
    351351        }
     352       
     353        public void testDoNotMergeEqualObjectsWithDifferentNonZeroId() throws Exception {
     354                DataSet ds = new DataSet();
     355                Segment s1 = createSegment(ds, false, false, 23);
     356                Segment s2 = new Segment(s1);
     357                s2.id = 42;
     358                MergeVisitor v = new MergeVisitor(ds);
     359                v.visit(s2);
     360                assertEquals(2, ds.segments.size());
     361        }
    352362}
Note: See TracChangeset for help on using the changeset viewer.