Index: src/org/openstreetmap/josm/io/OsmServerWriter.java
===================================================================
--- src/org/openstreetmap/josm/io/OsmServerWriter.java	(revision 1097)
+++ src/org/openstreetmap/josm/io/OsmServerWriter.java	(working copy)
@@ -222,7 +222,7 @@
 			activeConnection.disconnect();
 			if (retCode == 404)
 			{
-				System.out.println("Server does not support changesets, continuing");
+				System.out.println("Server does not support changesets, or the changeset was not found, continuing");
 				return true;
 			}
 			if (retCode != 200 && retCode != 412) {
@@ -238,6 +238,7 @@
 				// Look for a detailed error message from the server
 				if (activeConnection.getHeaderField("Error") != null)
 				    retMsg += "\n" + activeConnection.getHeaderField("Error");
+// No error header is actually returned, look at the std payload
 
 				// Report our error
 				ByteArrayOutputStream o = new ByteArrayOutputStream();
@@ -345,6 +346,7 @@
                     // Look for a detailed error message from the server
                     if (activeConnection.getHeaderField("Error") != null)
                         retMsg += "\n" + activeConnection.getHeaderField("Error");
+// No error header is actually returned, look at the std payload
 
                     // Report our error
                     ByteArrayOutputStream o = new ByteArrayOutputStream();
@@ -416,12 +418,13 @@
 			int retCode = activeConnection.getResponseCode();
 			if (retCode == 200)
 				changeset.id = readId(activeConnection.getInputStream());
+      // wtf we already have the id of the changeset, which isn't returned by the api when we are closing the changeset
 			System.out.println("got return: "+retCode+" with id "+changeset.id);
 			String retMsg = activeConnection.getResponseMessage();
 			activeConnection.disconnect();
 			if (retCode == 404)
 			{
-				System.out.println("Server does not support changesets, continuing");
+				System.out.println("Server does not support changesets, or the changeset could not be found, continuing");
 				return;
 			}
 			if (retCode != 200 && retCode != 412) {
@@ -435,6 +438,7 @@
 					// Look for a detailed error message from the server
 					if (activeConnection.getHeaderField("Error") != null)
 						retMsg += "\n" + activeConnection.getHeaderField("Error");
+// No error header is actually returned, look at the std payload
 
 					// Report our error
 					ByteArrayOutputStream o = new ByteArrayOutputStream();
