ObjFW  Diff

Differences From Artifact [b626330f56]:

To Artifact [930fe22400]:


17
18
19
20
21
22
23
24

25
26
27
28
29




30
31

32
33
34
35

36
37

38
39
40
41
42




43
44
45

46
17
18
19
20
21
22
23

24
25




26
27
28
29
30

31
32
33
34

35
36

37
38




39
40
41
42
43
44

45
46







-
+

-
-
-
-
+
+
+
+

-
+



-
+

-
+

-
-
-
-
+
+
+
+


-
+


#import "ObjFWRT.h"
#import "private.h"

void
__objc_exec_class(struct objc_module *module)
{
	objc_global_mutex_lock();
	objc_globalMutex_lock();

	objc_register_all_selectors(module->symtab);
	objc_register_all_classes(module->symtab);
	objc_register_all_categories(module->symtab);
	objc_init_static_instances(module->symtab);
	objc_registerAllSelectors(module->symtab);
	objc_registerAllClasses(module->symtab);
	objc_registerAllCategories(module->symtab);
	objc_initStaticInstances(module->symtab);

	objc_global_mutex_unlock();
	objc_globalMutex_unlock();
}

void
objc_exit(void)
objc_deinit(void)
{
	objc_global_mutex_lock();
	objc_globalMutex_lock();

	objc_unregister_all_categories();
	objc_unregister_all_classes();
	objc_unregister_all_selectors();
	objc_forget_pending_static_instances();
	objc_unregisterAllCategories();
	objc_unregisterAllClasses();
	objc_unregisterAllSelectors();
	objc_forgetPendingStaticInstances();
	objc_dtable_cleanup();

	objc_global_mutex_unlock();
	objc_globalMutex_unlock();
}