Ticket #13948: validator_seems_to_hang_4.patch

File validator_seems_to_hang_4.patch, 1.3 KB (added by GerdP, 9 years ago)
  • src/org/openstreetmap/josm/gui/dialogs/validator/ValidatorTreePanel.java

     
    434434    }
    435435
    436436    @Override public void primitivesRemoved(PrimitivesRemovedEvent event) {
    437         // Remove purged primitives (fix #8639)
    438         for (TestError err : errors) {
    439             try {
    440                 err.getPrimitives().removeAll(event.getPrimitives());
    441             } catch (UnsupportedOperationException e) {
    442                 if (event.getPrimitives().containsAll(err.getPrimitives())) {
    443                     err.getPrimitives().clear();
    444                 } else {
    445                     Main.warn(e, "Unable to remove primitives from "+err+'.');
    446                 }
    447             }
    448         }
     437        // Remove errors which list of primitives refer to purged primitives (fix #8639)
     438        setErrorList(errors.stream()
     439                .filter(err -> event.getPrimitives().stream().noneMatch(prim -> err.getPrimitives().contains(prim)))
     440                .collect(Collectors.toList()));
    449441    }
    450442
    451443    @Override public void primitivesAdded(PrimitivesAddedEvent event) {