Fix copying of cached map data.
When I added the new ability to read from memory, I didn't fix one
of the pointers in the map data when doing a copy.
Bug: 24352206
(cherry picked from commit 2d1a6f7913ba690595d40e487e9978e695db71d5)
Change-Id: I1671b9c06e67b3f92ff9026e453e44e872466113
diff --git a/src/Los-common.c b/src/Los-common.c
index 111caba..fd6ae3f 100644
--- a/src/Los-common.c
+++ b/src/Los-common.c
@@ -66,6 +66,9 @@
/* No need to do any lock, the entire local_map_list is locked
at this point. */
new_list->ei = old_list->ei;
+ /* Adjust the map pointer in the elf image data if necessary. */
+ if (!new_list->ei.mapped)
+ new_list->ei.u.memory.map = new_list;
/* If it was mapped before, make sure to mark it unmapped now. */
old_list->ei.mapped = false;
/* Don't bother breaking out of the loop, the next while check