Actually manage memory in the old-style AOS logging

LeakSanitizer should be happy with it now. It's also still just as
thread-safe.

Change-Id: Id09a0349657cf4f719267b053f0ea3d8ec366256
diff --git a/aos/events/shm_event_loop.cc b/aos/events/shm_event_loop.cc
index 29f01a4..406325d 100644
--- a/aos/events/shm_event_loop.cc
+++ b/aos/events/shm_event_loop.cc
@@ -964,9 +964,11 @@
   ReserveEvents();
 
   {
+    logging::ScopedLogRestorer prev_logger;
     AosLogToFbs aos_logger;
     if (!skip_logger_) {
       aos_logger.Initialize(MakeSender<logging::LogMessageFbs>("/aos"));
+      prev_logger.Swap(aos_logger.implementation());
     }
 
     aos::SetCurrentThreadName(name_.substr(0, 16));