diff --git a/mono/metadata/gc.c b/mono/metadata/gc.c index deca78d4e4ec..6eca2b96528c 100644 --- a/mono/metadata/gc.c +++ b/mono/metadata/gc.c @@ -864,6 +864,7 @@ mono_gc_cleanup (void) mono_thread_join (GUINT_TO_POINTER (gc_thread->tid)); } + g_assert (finalizer_thread_exited); } gc_thread = NULL; mono_gc_base_cleanup (); @@ -871,6 +872,7 @@ mono_gc_cleanup (void) mono_reference_queue_cleanup (); + // fprintf (stderr, "destory finalizer and reference queue mutex\n"); mono_coop_mutex_destroy (&finalizer_mutex); mono_coop_mutex_destroy (&reference_queue_mutex); } diff --git a/mono/tests/test-driver b/mono/tests/test-driver index a10323bb177a..86fcf423c45b 100755 --- a/mono/tests/test-driver +++ b/mono/tests/test-driver @@ -47,6 +47,9 @@ my $cpid = fork (); if (!defined ($cpid)) { $res = system("$interpreter @ARGV $test_binary 2>$stderr 1>$stdout"); } elsif ($cpid == 0) { + print "that's it >>>>>>>>\n"; + print "$interpreter @ARGV $test_binary 2>$stderr 1>$stdout\n"; + print "\n<<<<<<<<<\n"; exec ("$interpreter @ARGV $test_binary 2>$stderr 1>$stdout") || die "Cannot exec: $!"; } else { # in the parent, setup the alarm