diff options
author | NARUSE, Yui <naruse@airemix.jp> | 2021-03-11 20:06:14 +0900 |
---|---|---|
committer | NARUSE, Yui <naruse@airemix.jp> | 2021-03-11 20:06:14 +0900 |
commit | 0074ea2d83230e10ab0cd769fff203c13d3c592f (patch) | |
tree | ff05df5bc60d662584beb19da2f21dc7d39675ad | |
parent | 05fa06a4ed419949e79e79ff088c19fb2ecb07b7 (diff) |
merge revision(s) 2a83650b0fd25719fb6c03bfec7bd895734d3ceb: [Backport #15852]
Destroy VM-wise locks before freeing [Bug #15852]
---
thread.c | 7 -------
vm.c | 2 ++
2 files changed, 2 insertions(+), 7 deletions(-)
-rw-r--r-- | thread.c | 7 | ||||
-rw-r--r-- | version.h | 2 | ||||
-rw-r--r-- | vm.c | 2 |
3 files changed, 3 insertions, 8 deletions
@@ -424,13 +424,6 @@ rb_vm_gvl_destroy(rb_global_vm_lock_t *gvl) { gvl_release(gvl); gvl_destroy(gvl); - - if (0) { - rb_vm_t *vm = GET_VM(); - /* may be held by running threads */ - rb_native_mutex_destroy(&vm->waitpid_lock); - rb_native_mutex_destroy(&vm->workqueue_lock); - } } void @@ -12,7 +12,7 @@ # define RUBY_VERSION_MINOR RUBY_API_VERSION_MINOR #define RUBY_VERSION_TEENY 0 #define RUBY_RELEASE_DATE RUBY_RELEASE_YEAR_STR"-"RUBY_RELEASE_MONTH_STR"-"RUBY_RELEASE_DAY_STR -#define RUBY_PATCHLEVEL 49 +#define RUBY_PATCHLEVEL 50 #define RUBY_RELEASE_YEAR 2021 #define RUBY_RELEASE_MONTH 3 @@ -2653,6 +2653,8 @@ ruby_vm_destruct(rb_vm_t *vm) if (objspace) { rb_objspace_free(objspace); } + rb_native_mutex_destroy(&vm->waitpid_lock); + rb_native_mutex_destroy(&vm->workqueue_lock); /* after freeing objspace, you *can't* use ruby_xfree() */ ruby_mimfree(vm); ruby_current_vm_ptr = NULL; |