Opened 5 years ago
Closed 5 years ago
#17767 closed defect (fixed)
Action "Update multipolygon" may change route relation to multipolygon
Reported by: | GerdP | Owned by: | GerdP |
---|---|---|---|
Priority: | normal | Milestone: | 19.05 |
Component: | Core | Version: | |
Keywords: | template_report | Cc: |
Description (last modified by )
What steps will reproduce the problem?
- load attached file
- Select way with id 189944949 (amenity=parking)
- Look at entry Tools -> Update multipolygon (Ctrl+Shift+B)
What is the expected result?
The entry for the action should be disabled
What happens instead?
The entry is enabled and clicking it will download missing members of the route relation and finally change the route relation to an invalid multipolygon.
Please provide any additional information below. Attach a screenshot if possible.
If the selected ways were only referred by one multipolygon relation but also by another relation (maybe a route or site relation) the action is wrongly disabled.
URL:https://josm.openstreetmap.de/svn/trunk Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b Last:Changed Date: 2019-04-28 04:36:41 +0200 (Sun, 28 Apr 2019) Build-Date:2019-04-28 02:37:58 Revision:15031 Relative:URL: ^/trunk Identification: JOSM/1.5 (15031 en) Windows 10 64-Bit OS Build number: Windows 10 Home 1803 (17134) Memory Usage: 704 MB / 1820 MB (262 MB allocated, but free) Java version: 1.8.0_201-b09, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM Screen: \Display0 1920x1080 Maximum Screen Size: 1920x1080 VM arguments: [-XX:StartFlightRecording=name=MyRecording2,settings=d:\dbg\gerd.jfc, -XX:FlightRecorderOptions=defaultrecording=true,dumponexit=true,dumponexitpath=e:\ld\perf_20190529_074852.jfr] Dataset consistency test: No problems found Plugins: + OpeningHoursEditor (34977) + apache-commons (34908) + buildings_tools (34982) + continuosDownload (82) + ejml (34908) + geotools (34908) + jaxb (35014) + jts (34908) + o5m (34908) + opendata (34997) + pbf (34908) + poly (34991) + reverter (34999) + undelete (34977) + utilsplugin2 (34977) Validator rules: + c:\josm\core\data\validator\geometry.mapcss Last errors/warnings: - W: No configuration settings found. Using hardcoded default values for all pools.
Attachments (1)
Change History (7)
by , 5 years ago
Attachment: | upd-mp-issues.osm.bz2 added |
---|
comment:1 by , 5 years ago
Milestone: | → 19.05 |
---|---|
Owner: | changed from | to
Status: | new → assigned |
comment:2 by , 5 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:3 by , 5 years ago
Description: | modified (diff) |
---|
comment:5 by , 5 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
I just found out that this is quite complex. The updateEnabled() method may set the status to enabled but actionPerformed() should verify that this is still correct.
The undoredo handler can change the referrers of a way and when that happens getSelectedMultipolygonRelation()
might return null.
Another problem is the OsmPrimitive.getReferrers() method itself. It will return filtered elements. I did not yet find out which flags I have to check...
In 15137/josm: