Fixes PR131.
[cacao.git] / src / vm / finalizer.cpp
index 690a09ac5764568368dfd9e80d19065c4a2eaae2..7a4ecd4711e86c50f9beb68d519a9c8a9e506ff2 100644 (file)
 
 #include "vm/types.h"
 
-#include "mm/memory.h"
+#include "mm/memory.hpp"
 
 #include "threads/condition.hpp"
 #include "threads/mutex.hpp"
 #include "threads/thread.hpp"
+#include "threads/lock.hpp"
 
 #include "vm/jit/builtin.hpp"
 #include "vm/exceptions.hpp"
@@ -220,6 +221,10 @@ void finalizer_run(void *o, void *p)
        /* if we had an exception in the finalizer, ignore it */
 
        exceptions_clear_exception();
+
+#if defined(ENABLE_GC_BOEHM)
+    lock_schedule_lockrecord_removal(h);
+#endif
 }
 
 #if defined(__cplusplus)