Index: /src/org/openstreetmap/josm/actions/PreferencesAction.java
===================================================================
--- /src/org/openstreetmap/josm/actions/PreferencesAction.java	(revision 175)
+++ /src/org/openstreetmap/josm/actions/PreferencesAction.java	(revision 176)
@@ -39,9 +39,9 @@
 		JOptionPane pane = new JOptionPane(prefPanel, JOptionPane.PLAIN_MESSAGE, JOptionPane.OK_CANCEL_OPTION);
 		JDialog dlg = pane.createDialog(Main.parent, tr("Preferences"));
-		
+
 		if (dlg.getWidth() > 600)
 			dlg.setSize(600, dlg.getHeight());
-		if (dlg.getHeight() > 450)
-			dlg.setSize(dlg.getWidth(), 450);
+		if (dlg.getHeight() > 600)
+			dlg.setSize(dlg.getWidth(),600);
 
 		dlg.setVisible(true);
Index: /test/org/openstreetmap/josm/io/IncompleteDownloaderTest.java
===================================================================
--- /test/org/openstreetmap/josm/io/IncompleteDownloaderTest.java	(revision 176)
+++ /test/org/openstreetmap/josm/io/IncompleteDownloaderTest.java	(revision 176)
@@ -0,0 +1,38 @@
+package org.openstreetmap.josm.io;
+
+import java.io.ByteArrayInputStream;
+import java.io.InputStream;
+import java.util.LinkedList;
+
+import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.osm.Segment;
+import org.openstreetmap.josm.data.osm.Way;
+import org.openstreetmap.josm.gui.PleaseWaitDialog;
+import org.openstreetmap.josm.testframework.Bug;
+import org.openstreetmap.josm.testframework.MotherObject;
+
+public class IncompleteDownloaderTest extends MotherObject {
+
+
+	@Bug(174)
+	public void testDownloadDoesNotWriteToMainDataDirectly() throws Exception {
+		LinkedList<Way> l = new LinkedList<Way>();
+		Way w = new Way();
+		w.segments.add(new Segment(23)); // incomplete segment
+		Main.ds.nodes.add(createNode(1));
+		Main.ds.nodes.add(createNode(2));
+		l.add(w);
+		IncompleteDownloader downloader = new IncompleteDownloader(l) {
+			@Override protected InputStream getInputStream(String urlStr, PleaseWaitDialog pleaseWaitDlg) {
+				String xml = "<osm version='0.3'><segment id='23' from='1' to='2'/></osm>";
+	            return new ByteArrayInputStream(xml.getBytes());
+            }
+		};
+
+		Main.pleaseWaitDlg = new PleaseWaitDialog();
+
+		downloader.parse();
+
+		assertEquals("Does not directly write to main data", 0, Main.ds.segments.size());
+	}
+}
