pike.git / src / module.c

version» Context lines:

pike.git/src/module.c:479: Inside #if defined(DO_PIKE_CLEANUP)
      if (exit_with_cleanup) {    /* Kill the threads and destruct all remaining objects while we    * have a proper execution environment. The downside is that the    * leak report below will always report destructed objects. We use    * the gc in a special mode for this to get a reasonably sane    * destruct order. */   #ifdef PIKE_THREADS    cleanup_all_other_threads();   #endif - #ifndef USE_VALGRIND -  /* Some module exit code will use destructed objects, which -  valgrind will complain about as the storage area is marked -  write only. */ +     gc_destruct_everything = 1; - #endif +     count = do_gc (NULL, 1);    while (count) {    size_t new_count = do_gc (NULL, 1);    if (new_count >= count) {    fprintf (stderr, "Some destroy function is creating new objects "    "during final cleanup - can't exit cleanly.\n");    break;    }    count = new_count;    }