Index: applications/editors/josm/plugins/opendata/test/data/regress/12843/test.prj
===================================================================
--- applications/editors/josm/plugins/opendata/test/data/regress/12843/test.prj	(revision 34898)
+++ applications/editors/josm/plugins/opendata/test/data/regress/12843/test.prj	(revision 34898)
@@ -0,0 +1,1 @@
+GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]]
Index: applications/editors/josm/plugins/opendata/test/unit/org/openstreetmap/josm/plugins/opendata/core/io/geographic/ShpReaderTest.java
===================================================================
--- applications/editors/josm/plugins/opendata/test/unit/org/openstreetmap/josm/plugins/opendata/core/io/geographic/ShpReaderTest.java	(revision 34404)
+++ applications/editors/josm/plugins/opendata/test/unit/org/openstreetmap/josm/plugins/opendata/core/io/geographic/ShpReaderTest.java	(revision 34898)
@@ -2,4 +2,5 @@
 package org.openstreetmap.josm.plugins.opendata.core.io.geographic;
 
+import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNotNull;
@@ -9,4 +10,5 @@
 import java.io.FileInputStream;
 import java.io.InputStream;
+import java.util.Collection;
 
 import org.junit.Ignore;
@@ -16,4 +18,5 @@
 import org.openstreetmap.josm.data.coor.LatLon;
 import org.openstreetmap.josm.data.osm.Node;
+import org.openstreetmap.josm.data.osm.Way;
 import org.openstreetmap.josm.plugins.opendata.core.io.NonRegFunctionalTests;
 import org.openstreetmap.josm.testutils.JOSMTestRules;
@@ -85,3 +88,19 @@
         }
     }
+
+    /**
+     * Non-regression test for ticket <a href="https://josm.openstreetmap.de/ticket/12843">#12843</a>
+     * @throws Exception if an error occurs during reading
+     */
+    @Test
+    public void testTicket12843() throws Exception {
+        File file = new File(TestUtils.getRegressionDataFile(12843, "test.shp"));
+        try (InputStream is = new FileInputStream(file)) {
+            Collection<Way> ways = ShpReader.parseDataSet(is, file, null, null).getWays();
+            assertFalse(ways.isEmpty());
+            for (Way way : ways) {
+                assertEquals("Test", way.get("name"));
+            }
+        }
+    }
 }
