summaryrefslogtreecommitdiff
path: root/dyn_load.c
diff options
context:
space:
mode:
Diffstat (limited to 'dyn_load.c')
-rw-r--r--dyn_load.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/dyn_load.c b/dyn_load.c
index 0dc03be5..6e159799 100644
--- a/dyn_load.c
+++ b/dyn_load.c
@@ -305,10 +305,9 @@ static void sort_heap_sects(struct HeapSect *base, size_t number_of_elements)
}
}
-STATIC void GC_register_map_entries(char *maps)
+STATIC void GC_register_map_entries(const char *maps)
{
- char *prot;
- char *buf_ptr = maps;
+ const char *prot;
ptr_t start, end;
unsigned int maj_dev;
ptr_t least_ha, greatest_ha;
@@ -321,10 +320,9 @@ STATIC void GC_register_map_entries(char *maps)
+ GC_our_memory[GC_n_memory-1].hs_bytes;
for (;;) {
- buf_ptr = GC_parse_map_entry(buf_ptr, &start, &end, &prot,
- &maj_dev, 0);
- if (NULL == buf_ptr)
- break;
+ maps = GC_parse_map_entry(maps, &start, &end, &prot, &maj_dev, 0);
+ if (NULL == maps) break;
+
if (prot[1] == 'w') {
/* This is a writable mapping. Add it to */
/* the root set unless it is already otherwise */
@@ -399,7 +397,7 @@ STATIC void GC_register_map_entries(char *maps)
GC_INNER void GC_register_dynamic_libraries(void)
{
- char *maps = GC_get_maps();
+ const char *maps = GC_get_maps();
if (NULL == maps)
ABORT("Failed to read /proc for library registration");