Overview
Comment: | ObjFWTest: Make sure classes are initialized
This fixes it with the ObjFW runtime again, which was broken by the last |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
f4bb3f5a76a5a498178d84e7b68550cb |
User & Date: | js on 2024-02-10 14:16:02 |
Other Links: | manifest | tags |
Context
2024-02-11
| ||
11:56 | ObjFWTest: Add OTAssert(Not)Nil check-in: ef40fca9fd user: js tags: trunk | |
2024-02-10
| ||
14:16 | Merge trunk into branch "objfwtest" check-in: d365229b6e user: js tags: objfwtest | |
14:16 | ObjFWTest: Make sure classes are initialized check-in: f4bb3f5a76 user: js tags: trunk | |
14:00 | ObjFWTest: Don't rely on +[isSubclassOfClass:] check-in: f5b4f0fa39 user: js tags: trunk | |
Changes
Modified src/test/OTAppDelegate.m from [1f6282da2f] to [94d0e3c3f7].
︙ | ︙ | |||
46 47 48 49 50 51 52 | if (classes == NULL) return nil; @try { testClasses = [OFMutableSet set]; | | > > > > > > > > > > > > > | 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | if (classes == NULL) return nil; @try { testClasses = [OFMutableSet set]; for (Class *iter = classes; *iter != Nil; iter++) { /* * Make sure the class is initialized. * Required for the ObjFW runtime, as otherwise * class_getSuperclass() crashes. */ [*iter class]; /* * Don't use +[isSubclassOfClass:], as the Apple runtime * can return (presumably internal?) classes that don't * implement it, resulting in a crash. */ if (isSubclassOfClass(*iter, [OTTestCase class])) [testClasses addObject: *iter]; } } @finally { OFFreeMemory(classes); } [testClasses removeObject: [OTTestCase class]]; [testClasses makeImmutable]; |
︙ | ︙ |