@@ -1412,8 +1412,9 @@ static void singlePayloadEnumSimpleAssignWithCopy(const Metadata *metadata,
1412
1412
return ;
1413
1413
} else if (destTagBytes >= xiTagValues) {
1414
1414
const uint8_t *end = (reader.layoutStr + refCountBytes);
1415
+ auto nestedAddrOffset = addrOffset;
1415
1416
while (reader.layoutStr < end) {
1416
- handleSingleRefCountDestroy (metadata, reader, addrOffset , dest);
1417
+ handleSingleRefCountDestroy (metadata, reader, nestedAddrOffset , dest);
1417
1418
}
1418
1419
} else {
1419
1420
reader.skip (refCountBytes);
@@ -1448,8 +1449,9 @@ static void singlePayloadEnumFNAssignWithCopy(const Metadata *metadata,
1448
1449
return ;
1449
1450
} else if (destTag == 0 ) {
1450
1451
const uint8_t *end = (reader.layoutStr + refCountBytes);
1452
+ auto nestedAddrOffset = addrOffset;
1451
1453
while (reader.layoutStr < end) {
1452
- handleSingleRefCountDestroy (metadata, reader, addrOffset , dest);
1454
+ handleSingleRefCountDestroy (metadata, reader, nestedAddrOffset , dest);
1453
1455
}
1454
1456
} else {
1455
1457
reader.skip (refCountBytes);
@@ -1484,8 +1486,9 @@ static void singlePayloadEnumFNResolvedAssignWithCopy(const Metadata *metadata,
1484
1486
return ;
1485
1487
} else if (destTag == 0 ) {
1486
1488
const uint8_t *end = (reader.layoutStr + refCountBytes);
1489
+ auto nestedAddrOffset = addrOffset;
1487
1490
while (reader.layoutStr < end) {
1488
- handleSingleRefCountDestroy (metadata, reader, addrOffset , dest);
1491
+ handleSingleRefCountDestroy (metadata, reader, nestedAddrOffset , dest);
1489
1492
}
1490
1493
} else {
1491
1494
reader.skip (refCountBytes);
@@ -1545,8 +1548,9 @@ static void singlePayloadEnumGenericAssignWithCopy(const Metadata *metadata,
1545
1548
return ;
1546
1549
} else if (destTag == 0 ) {
1547
1550
const uint8_t *end = (reader.layoutStr + refCountBytes);
1551
+ auto nestedAddrOffset = addrOffset;
1548
1552
while (reader.layoutStr < end) {
1549
- handleSingleRefCountDestroy (metadata, reader, addrOffset , dest);
1553
+ handleSingleRefCountDestroy (metadata, reader, nestedAddrOffset , dest);
1550
1554
}
1551
1555
} else {
1552
1556
reader.skip (refCountBytes);
0 commit comments