diff --git a/src/main.c b/src/main.c
index fce4d39f06525d0cf1341853c9f9481291decd4a..70184c18b3eb041c6e21b3e519c726ac9747eccb 100644
--- a/src/main.c
+++ b/src/main.c
@@ -889,6 +889,10 @@ int main(int argc, char *argv[])
 	core_def->define = &define_core;
 	core_def->define(core_def, "te4core", -1, NULL, NULL, NULL, NULL, 0, NULL);
 
+#ifdef SELFEXE_WINDOWS
+	freopen ("te4_log.txt", "w", stdout);
+#endif
+
 	// Parse arguments
 	int i;
 	for (i = 1; i < argc; i++)
@@ -902,10 +906,6 @@ int main(int argc, char *argv[])
 		if (!strncmp(arg, "--no-debug", 10)) no_debug = TRUE;
 	}
 
-#ifdef SELFEXE_WINDOWS
-	freopen ("te4_log.txt", "w", stdout);
-#endif
-
 	// Get cpu cores
 	nb_cpus = get_number_cpus();
 	printf("[CPU] Detected %d CPUs\n", nb_cpus);