Index: trunk/src/org/openstreetmap/josm/io/GeoJSONWriter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/GeoJSONWriter.java	(revision 12438)
+++ trunk/src/org/openstreetmap/josm/io/GeoJSONWriter.java	(revision 12439)
@@ -107,5 +107,5 @@
             if (w != null) {
                 final JsonArrayBuilder array = getCoorsArray(w.getNodes());
-                if (ElemStyles.hasAreaElemStyle(w, false)) {
+                if (w.isClosed() && ElemStyles.hasAreaElemStyle(w, false)) {
                     final JsonArrayBuilder container = Json.createArrayBuilder().add(array);
                     geomObj.add("type", "Polygon");
Index: trunk/test/unit/org/openstreetmap/josm/io/GeoJSONWriterTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/io/GeoJSONWriterTest.java	(revision 12438)
+++ trunk/test/unit/org/openstreetmap/josm/io/GeoJSONWriterTest.java	(revision 12439)
@@ -6,4 +6,5 @@
 
 import java.io.FileInputStream;
+import java.util.Arrays;
 
 import org.junit.BeforeClass;
@@ -14,4 +15,5 @@
 import org.openstreetmap.josm.data.osm.DataSet;
 import org.openstreetmap.josm.data.osm.Node;
+import org.openstreetmap.josm.data.osm.Way;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer;
 
@@ -30,5 +32,5 @@
 
     /**
-     * Unit test
+     * Unit test for Point
      */
     @Test
@@ -57,4 +59,48 @@
                 "                    4.56000000000,\n" +
                 "                    12.30000000000\n" +
+                "                ]\n" +
+                "            }\n" +
+                "        }\n" +
+                "    ]\n" +
+                "}").replace("'", "\""), writer.write().trim());
+    }
+
+    /**
+     * Unit test for LineString
+     */
+    @Test
+    public void testLineString() {
+        final DataSet ds = new DataSet();
+        final Node n1 = new Node(new LatLon(12.3, 4.56));
+        final Node n2 = new Node(new LatLon(12.4, 4.57));
+        ds.addPrimitive(n1);
+        ds.addPrimitive(n2);
+        final Way way = new Way();
+        way.put("highway", "footway");
+        way.setNodes(Arrays.asList(n1, n2));
+        ds.addPrimitive(way);
+        final OsmDataLayer layer = new OsmDataLayer(ds, "foo", null);
+        final GeoJSONWriter writer = new GeoJSONWriter(layer);
+        assertEquals(("" +
+                "{\n" +
+                "    'type':'FeatureCollection',\n" +
+                "    'generator':'JOSM',\n" +
+                "    'features':[\n" +
+                "        {\n" +
+                "            'type':'Feature',\n" +
+                "            'properties':{\n" +
+                "                'highway':'footway'\n" +
+                "            },\n" +
+                "            'geometry':{\n" +
+                "                'type':'LineString',\n" +
+                "                'coordinates':[\n" +
+                "                    [\n" +
+                "                        4.56000000000,\n" +
+                "                        12.30000000000\n" +
+                "                    ],\n" +
+                "                    [\n" +
+                "                        4.57000000000,\n" +
+                "                        12.40000000000\n" +
+                "                    ]\n" +
                 "                ]\n" +
                 "            }\n" +
