Skip to content

Commit 22f08f7

Browse files
committed
Runtime: Set metadata size when allocating runtime-sized class metadata
1 parent e3d6a2b commit 22f08f7

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

stdlib/public/runtime/Metadata.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,7 @@ swift::swift_allocateGenericClassMetadata(GenericMetadata *pattern,
188188
// The pattern might have private prefix matter prior to the start
189189
// of metadata.
190190
assert(metadata->getClassAddressPoint() <= pattern->AddressPoint);
191+
metadata->setClassSize(metadataSize);
191192

192193
return metadata;
193194
}
@@ -1539,6 +1540,8 @@ swift::swift_relocateClassMetadata(ClassMetadata *self,
15391540

15401541
rawNewClass += self->getClassAddressPoint();
15411542
auto *newClass = (ClassMetadata *) rawNewClass;
1543+
newClass->setClassSize(metadataSize);
1544+
15421545
assert(newClass->isTypeMetadata());
15431546

15441547
return newClass;

0 commit comments

Comments
 (0)