Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libgc/finalize.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/libgc/finalize.c b/libgc/finalize.c
index fd133ae4b11..91f6970180c 100644
--- a/libgc/finalize.c
+++ b/libgc/finalize.c
@@ -386,7 +386,7 @@ static void GC_mark_togglerefs ()
if (!GC_toggleref_array)
return;
- GC_set_mark_bit (GC_toggleref_array);
+ GC_set_mark_bit ((GC_PTR)GC_toggleref_array);
for (i = 0; i < GC_toggleref_array_size; ++i) {
if (GC_toggleref_array [i].strong_ref) {
GC_PTR object = GC_toggleref_array [i].strong_ref;
@@ -424,7 +424,7 @@ ensure_toggleref_capacity (int capacity)
{
if (!GC_toggleref_array) {
GC_toggleref_array_capacity = 32;
- GC_toggleref_array = (GCToggleRef *) GC_INTERNAL_MALLOC (GC_toggleref_array_capacity * sizeof (GCToggleRef), NORMAL);
+ GC_toggleref_array = (GCToggleRef *) GC_INTERNAL_MALLOC_IGNORE_OFF_PAGE (GC_toggleref_array_capacity * sizeof (GCToggleRef), NORMAL);
}
if (GC_toggleref_array_size + capacity >= GC_toggleref_array_capacity) {
GCToggleRef *tmp;
@@ -432,10 +432,9 @@ ensure_toggleref_capacity (int capacity)
while (GC_toggleref_array_capacity < GC_toggleref_array_size + capacity)
GC_toggleref_array_capacity *= 2;
- tmp = (GCToggleRef *) GC_INTERNAL_MALLOC (GC_toggleref_array_capacity * sizeof (GCToggleRef), NORMAL);
+ tmp = (GCToggleRef *) GC_INTERNAL_MALLOC_IGNORE_OFF_PAGE (GC_toggleref_array_capacity * sizeof (GCToggleRef), NORMAL);
memcpy (tmp, GC_toggleref_array, GC_toggleref_array_size * sizeof (GCToggleRef));
-
- GC_free((GC_PTR)GC_toggleref_array);
+ GC_INTERNAL_FREE (GC_toggleref_array);
GC_toggleref_array = tmp;
}
}