Ticket #17412: 17412.patch

File 17412.patch, 1.3 KB (added by GerdP, 7 years ago)

Possible solution, please review

  • src/org/openstreetmap/josm/gui/dialogs/validator/ValidatorTreePanel.java

     
    404404     * Updates the current errors list
    405405     */
    406406    public void resetErrors() {
     407        errors.removeIf(error -> error.getPrimitives().stream().anyMatch(OsmPrimitive::isDeleted));
    407408        setErrors(new ArrayList<>(errors));
    408409    }
    409410
     
    485486        // Remove purged primitives (fix #8639)
    486487        if (errors != null) {
    487488            final Set<? extends OsmPrimitive> deletedPrimitives = new HashSet<>(event.getPrimitives());
    488             errors.removeIf(error -> error.getPrimitives().stream().anyMatch(deletedPrimitives::contains));
     489            if (errors.removeIf(error -> error.getPrimitives().stream().anyMatch(deletedPrimitives::contains))) {
     490                buildTree();
     491            }
    489492        }
    490493    }
    491494
     
    514517    }
    515518
    516519    @Override public void dataChanged(DataChangedEvent event) {
    517         // Do nothing
     520        if (errors.removeIf(error -> error.getPrimitives().stream().anyMatch(OsmPrimitive::isDeleted))) {
     521            buildTree();
     522        }
    518523    }
    519524}