Commit c40fd13
committed
Fix memory leak hotspots
- render: alias the root Fragment's props.children to its diffed _children so in-place rerenders release replaced vnode generations instead of pinning the first render's tree (#4909, #4905)
- unmount: null vnode._children and component._globalContext so a retained unmounted vnode/component can't keep the subtree's vnode shells or the ancestor provider chain alive1 parent 82ed24e commit c40fd13
2 files changed
Lines changed: 15 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
654 | 654 | | |
655 | 655 | | |
656 | 656 | | |
657 | | - | |
| 657 | + | |
| 658 | + | |
| 659 | + | |
| 660 | + | |
658 | 661 | | |
659 | 662 | | |
660 | 663 | | |
| |||
673 | 676 | | |
674 | 677 | | |
675 | 678 | | |
676 | | - | |
| 679 | + | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
677 | 683 | | |
678 | 684 | | |
679 | 685 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
69 | 76 | | |
70 | 77 | | |
71 | 78 | | |
| |||
0 commit comments