diff --git a/update_manager/event_loop.cc b/update_manager/event_loop.cc
index 6ae6d36..bc2940b 100644
--- a/update_manager/event_loop.cc
+++ b/update_manager/event_loop.cc
@@ -17,10 +17,13 @@
 gboolean OnRanFromMainLoop(gpointer user_data) {
   Closure* callback_p = reinterpret_cast<Closure*>(user_data);
   callback_p->Run();
-  delete callback_p;
   return FALSE;  // Removes the source since a callback can only be called once.
 }
 
+void DestroyClosure(gpointer user_data) {
+  delete reinterpret_cast<Closure*>(user_data);
+}
+
 }  // namespace
 
 namespace chromeos_update_manager {
@@ -30,16 +33,19 @@
   return g_idle_add_full(G_PRIORITY_DEFAULT,
                          OnRanFromMainLoop,
                          reinterpret_cast<gpointer>(callback_p),
-                         NULL);
+                         DestroyClosure);
 }
 
 EventId RunFromMainLoopAfterTimeout(
     const Closure& callback,
     base::TimeDelta timeout) {
   Closure* callback_p = new Closure(callback);
-  return g_timeout_add_seconds(static_cast<guint>(ceil(timeout.InSecondsF())),
-                               OnRanFromMainLoop,
-                               reinterpret_cast<gpointer>(callback_p));
+  return g_timeout_add_seconds_full(
+      G_PRIORITY_DEFAULT,
+      static_cast<guint>(ceil(timeout.InSecondsF())),
+      OnRanFromMainLoop,
+      reinterpret_cast<gpointer>(callback_p),
+      DestroyClosure);
 }
 
 bool CancelMainLoopEvent(EventId event) {
