diff --git a/lto-plugin/ChangeLog b/lto-plugin/ChangeLog
index 3342979bc6e1362dcac0701454ef23eb2b101347..36679792ec4c05fd732f809e74a8c5df38bb0de5 100644
--- a/lto-plugin/ChangeLog
+++ b/lto-plugin/ChangeLog
@@ -1,3 +1,7 @@
+2009-11-04  Rafael Avila de Espindola  <espindola@google.com>
+
+	* lto-plugin.c (cleanup_handler): Don't cleanup if debugging.
+
 2009-10-30  Rafael Avila de Espindola  <espindola@google.com>
 
 	PR41871
diff --git a/lto-plugin/lto-plugin.c b/lto-plugin/lto-plugin.c
index c92ac06cf2d9f586e8799257f3812639aed59289..0be0b907420cdea5767143540fb959a938332c25 100644
--- a/lto-plugin/lto-plugin.c
+++ b/lto-plugin/lto-plugin.c
@@ -527,6 +527,9 @@ cleanup_handler (void)
 	}
     }
 
+  if (debug)
+    return LDPS_OK;
+
   /* If we are being called from an error handler, it is possible
      that the arguments file is still exists. */
   t = asprintf (&arguments, "%s/arguments", temp_obj_dir_name);