Skip to content

Commit 041dd1b

Browse files
authored
Merge pull request #60236 from mikeash/null-vtable-entry-ptrauth
[Runtime] Fix rare crash when fixing up dynamic subclasses.
2 parents 595f9ec + 91b8691 commit 041dd1b

File tree

2 files changed

+1064
-1
lines changed

2 files changed

+1064
-1
lines changed

stdlib/public/runtime/Metadata.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -471,7 +471,8 @@ static void swift_objc_classCopyFixupHandler(Class oldClass, Class newClass) {
471471
reinterpret_cast<void *const *>(&src[i]),
472472
descriptors[i].Flags.getExtraDiscriminator(),
473473
!descriptors[i].Flags.isAsync(),
474-
/*allowNull*/ false); // Don't allow NULL for Obj-C classes
474+
/*allowNull*/ true); // NULL allowed for VFE (methods in the vtable
475+
// might be proven unused and null'ed)
475476
}
476477
}
477478

0 commit comments

Comments
 (0)