Fix memory leak in RemoveRememberedSet.

RemoveRememberedSet now deletes the remembered set.

Bug: 16532086
Change-Id: I01092931cc20cd0688dd42eed3dde9ad140889b2
diff --git a/runtime/gc/heap.cc b/runtime/gc/heap.cc
index 1b9b077..d6cf52f 100644
--- a/runtime/gc/heap.cc
+++ b/runtime/gc/heap.cc
@@ -3118,6 +3118,7 @@
   CHECK(space != nullptr);
   auto it = remembered_sets_.find(space);
   CHECK(it != remembered_sets_.end());
+  delete it->second;
   remembered_sets_.erase(it);
   CHECK(remembered_sets_.find(space) == remembered_sets_.end());
 }
diff --git a/runtime/gc/heap.h b/runtime/gc/heap.h
index 56c6d6d..8ffadd5 100644
--- a/runtime/gc/heap.h
+++ b/runtime/gc/heap.h
@@ -572,6 +572,7 @@
 
   accounting::RememberedSet* FindRememberedSetFromSpace(space::Space* space);
   void AddRememberedSet(accounting::RememberedSet* remembered_set);
+  // Also deletes the remebered set.
   void RemoveRememberedSet(space::Space* space);
 
   bool IsCompilingBoot() const;