Index: /java/AEInstaller2-Updater/src/net/oni2/aeinstaller/updater/AEInstaller2Updater.java
===================================================================
--- /java/AEInstaller2-Updater/src/net/oni2/aeinstaller/updater/AEInstaller2Updater.java	(revision 1077)
+++ /java/AEInstaller2-Updater/src/net/oni2/aeinstaller/updater/AEInstaller2Updater.java	(revision 1078)
@@ -3,4 +3,5 @@
 import java.io.File;
 import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
 import java.io.PrintStream;
 
@@ -33,6 +34,6 @@
 		if (!debug) {
 			try {
-				PrintStream ps = new PrintStream(new File(Paths.getPrefsPath(),
-						"updater_output.log"));
+				PrintStream ps = new PrintStream(new FileOutputStream(new File(Paths.getPrefsPath(),
+						"updater_output.log")), true);
 				System.setOut(ps);
 				System.setErr(ps);
Index: /java/AEInstaller2-Updater/src/net/oni2/aeinstaller/updater/gui/MainWin.java
===================================================================
--- /java/AEInstaller2-Updater/src/net/oni2/aeinstaller/updater/gui/MainWin.java	(revision 1077)
+++ /java/AEInstaller2-Updater/src/net/oni2/aeinstaller/updater/gui/MainWin.java	(revision 1078)
@@ -91,4 +91,6 @@
 			}
 		}
+		
+		System.out.println("Closing AEI updater");
 		dispose();
 	}
@@ -111,9 +113,12 @@
 
 	class Updater extends SwingWorker<Status, Status> {
-		boolean uptodate = false;
+		protected void setStep(String text) {
+			step.setText(text);
+			System.out.println(text);
+		}
 
 		@Override
 		protected Status doInBackground() throws Exception {
-			step.setText("Waiting for AEI to close");
+			setStep("Waiting for AEI to close");
 			int i = 0;
 			while (!checkWritable() && i < 20) {
@@ -128,24 +133,40 @@
 								"Could not update because the main file of AEI was locked.\nPerhaps you are still running an instance of AEI?",
 								"Could not update!", JOptionPane.ERROR_MESSAGE);
+				System.out.println("Could not update because the main file of AEI was locked.");
 				System.exit(1);
 				return null;
 			}
 
-			step.setText("Updating");
+			setStep("Updating");
 
 			SVN svn = new SVN();
 			try {
+				boolean showError = false;
+				
 				int x = svn.checkSVN("http://svn.aei.oni2.net",
 						new File(Paths.getPrefsPath(), "bin"));
 				switch (x) {
 					case -2: // No repos connection
+						System.out.println("Error: No repository connection");
+						showError = true;
 						break;
 					case 0: // Repos up to date
-						uptodate = true;
+						System.out.println("AEI up to date");
 						break;
 					case -1:// no WC yet
 					case 1:// Update available
 					case 2:// missing files
-						uptodate = svn.updateWC("http://svn.aei.oni2.net",
+						switch (x) {
+							case -1:
+								System.out.println("No working copy created so far");
+								break;
+							case 1:
+								System.out.println("Updating to HEAD");
+								break;
+							case 2:
+								System.out.println("Updating for missing files");
+								break;
+						}
+						showError = !svn.updateWC("http://svn.aei.oni2.net",
 								new File(Paths.getPrefsPath(), "bin"),
 								new SVNUpdateListener() {
@@ -154,7 +175,10 @@
 									}
 								});
+						if (showError) {
+							System.out.println("Error: Updating failed!");
+						}
 						break;
 				}
-				if (!uptodate) {
+				if (showError) {
 					JOptionPane
 							.showMessageDialog(
@@ -198,10 +222,8 @@
 		protected void done() {
 			super.done();
-			if (uptodate) {
-				step.setText("AEI is up to date");
-				bar.setValue(1);
-				bar.setMaximum(1);
-				closeBtn.setEnabled(true);
-			}
+			step.setText("AEI is up to date");
+			bar.setValue(1);
+			bar.setMaximum(1);
+			closeBtn.setEnabled(true);
 		}
 	}
