From 7d5a0ff85e71a6f2fe64e3b45eda27fe5dc4ddc6 Mon Sep 17 00:00:00 2001 From: "Dustin L. Howett" Date: Tue, 7 Jun 2016 17:14:17 -0700 Subject: [PATCH] fix objc_resolve_class_links to actually rescan the unresolved list It looks like this was the initial intent of 4ea82e1, but as implemented it would still only scan the unresolved class list once. Since unresolved_class_list represents the head and classes are pushed onto the head, any classes added to the resolution list after resolution started would be skipped. --- class_table.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/class_table.c b/class_table.c index fa9a876..ec81255 100644 --- a/class_table.c +++ b/class_table.c @@ -258,10 +258,10 @@ PRIVATE BOOL objc_resolve_class(Class cls) PRIVATE void objc_resolve_class_links(void) { LOCK_RUNTIME_FOR_SCOPE(); - Class class = unresolved_class_list; BOOL resolvedClass; do { + Class class = unresolved_class_list; resolvedClass = NO; while ((Nil != class)) {