예제 #1
0
GC_INLINE void GC_add_leaked(ptr_t leaked)
{
#  ifndef SHORT_DBG_HDRS
     if (GC_findleak_delay_free && !GC_check_leaked(leaked))
       return;
#  endif

    GC_have_errors = TRUE;
    if (GC_n_leaked < MAX_LEAKED) {
      GC_leaked[GC_n_leaked++] = leaked;
      /* Make sure it's not reclaimed this cycle */
      GC_set_mark_bit(leaked);
    }
}
예제 #2
0
GC_INLINE void GC_add_leaked(ptr_t leaked)
{
#  ifndef SHORT_DBG_HDRS
    if (GC_findleak_delay_free && !GC_check_leaked(leaked))
        return;
#  endif

    GC_have_errors = TRUE;
    /* FIXME: Prevent adding an object while printing leaked ones.      */
    if (GC_n_leaked < MAX_LEAKED) {
        GC_leaked[GC_n_leaked++] = leaked;
        /* Make sure it's not reclaimed this cycle */
        GC_set_mark_bit(leaked);
    }
}