From d32bafc6e1879e4a0d27d3fead97404c266a530e Mon Sep 17 00:00:00 2001 From: Dustin Howett Date: Tue, 10 Apr 2018 12:04:08 -0700 Subject: [PATCH] Let go of the runtime lock properly in class_setSuperclass --- runtime.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/runtime.c b/runtime.c index 926bd06..7b0ebd5 100644 --- a/runtime.c +++ b/runtime.c @@ -526,7 +526,10 @@ Class class_setSuperclass(Class cls, Class newSuper) LOCK_RUNTIME(); - if (cls->super_class == newSuper) { return newSuper; } + if (cls->super_class == newSuper) { + UNLOCK_RUNTIME(); + return newSuper; + } safe_remove_from_subclass_list(cls); objc_resolve_class(newSuper);