/* Skip to the next object */
if (((MonoObject*)search_start)->synchronisation != GINT_TO_POINTER (-1)) {
CHECK_CANARY_FOR_OBJECT (search_start);
- obj_size = obj_size + CANARY_SIZE;
+ CANARIFY_SIZE (obj_size);
+ CANARIFY_SIZE (obj_to_pin_size);
}
search_start = (void*)((char*)search_start + obj_size);
} while (search_start <= addr);
*/
if (((MonoObject*)obj_to_pin)->synchronisation == GINT_TO_POINTER (-1))
goto next_pin_queue_entry;
- else if (nursery_canaries_enabled ())
- pinning_front = (char*)pinning_front + CANARY_SIZE;
/*
* Finally - pin the object!
#define CANARY_SIZE 8
#define CANARY_STRING "koupepia"
-#define CANARIFY_SIZE(size) size = size + CANARY_SIZE
+#define CANARIFY_SIZE(size) if (nursery_canaries_enabled ()) { \
+ size = size + CANARY_SIZE; \
+ }
#define CANARIFY_ALLOC(addr,size) if (nursery_canaries_enabled ()) { \
memcpy ((char*) (addr) + (size), CANARY_STRING, CANARY_SIZE); \