Commit dd72df0
assert,util: fix stale nested cycle memo entries
Temporary nested cycle-tracking entries could remain in the memory set
after a successful comparison. If a later sibling comparison reused one
of those objects, deepStrictEqual could incorrectly fail for equivalent
structures.
This cleans up the temporary nested entries after the nested
comparison returns.
Fixes: #62422
PR-URL: #62509
Fixes: #62422
Reviewed-By: Jordan Harband <ljharb@gmail.com>1 parent d73dbb9 commit dd72df0Copy full SHA for dd72df0
2 files changed
+42Lines changed: 42 additions & 0 deletions
File tree
Expand file treeCollapse file tree
Open diff view settings
Filter options
- lib/internal/util
- test/parallel
Expand file treeCollapse file tree
Open diff view settings
Collapse file
lib/internal/util/comparisons.js
Copy file name to clipboardExpand all lines: lib/internal/util/comparisons.js+4Lines changed: 4 additions & 0 deletions
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
529 | 529 | |
530 | 530 | |
531 | 531 | |
| 532 | + |
| 533 | + |
| 534 | + |
| 535 | + |
532 | 536 | |
533 | 537 | |
534 | 538 | |
|
Collapse file
test/parallel/test-assert-deep.js
Copy file name to clipboardExpand all lines: test/parallel/test-assert-deep.js+38Lines changed: 38 additions & 0 deletions
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
260 | 260 | |
261 | 261 | |
262 | 262 | |
| 263 | + |
| 264 | + |
| 265 | + |
| 266 | + |
| 267 | + |
| 268 | + |
| 269 | + |
| 270 | + |
263 | 271 | |
264 | 272 | |
265 | 273 | |
| ||
609 | 617 | |
610 | 618 | |
611 | 619 | |
| 620 | + |
| 621 | + |
| 622 | + |
| 623 | + |
| 624 | + |
| 625 | + |
| 626 | + |
| 627 | + |
| 628 | + |
| 629 | + |
| 630 | + |
| 631 | + |
| 632 | + |
| 633 | + |
| 634 | + |
| 635 | + |
| 636 | + |
| 637 | + |
| 638 | + |
| 639 | + |
| 640 | + |
| 641 | + |
| 642 | + |
| 643 | + |
| 644 | + |
| 645 | + |
| 646 | + |
| 647 | + |
| 648 | + |
| 649 | + |
612 | 650 | |
613 | 651 | |
614 | 652 | |
|
0 commit comments