| 29 | diff --git a/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java b/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java |
| 30 | index 3ea58fc..1dd3f4b 100644 |
| 31 | --- a/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java |
| 32 | +++ b/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java |
| 33 | @@ -520,10 +520,15 @@ public void cleanupAfterUpload(final Collection<IPrimitive> processed) { |
| 34 | |
| 35 | // if uploaded, clean the modified flags as well |
| 36 | data.cleanupDeletedPrimitives(); |
| 37 | - for (OsmPrimitive p: data.allPrimitives()) { |
| 38 | - if (processed.contains(p)) { |
| 39 | - p.setModified(false); |
| 40 | + data.beginUpdate(); |
| 41 | + try { |
| 42 | + for (OsmPrimitive p : data.allPrimitives()) { |
| 43 | + if (processed.contains(p)) { |
| 44 | + p.setModified(false); |
| 45 | + } |
| 46 | } |
| 47 | + } finally { |
| 48 | + data.endUpdate(); |
| 49 | } |
| 50 | } |