Page MenuHomePhabricator

Fix an issue when undoing mutiple inline comment deletions
ClosedPublic

Authored by epriestley on Mar 25 2021, 9:03 PM.
Tags
None
Referenced Files
F15562677: D21650.id51519.diff
Wed, Apr 30, 3:49 AM
F15562641: D21650.id51519.diff
Wed, Apr 30, 3:35 AM
F15561383: D21650.id51543.diff
Tue, Apr 29, 7:36 PM
F15540242: D21650.id.diff
Fri, Apr 25, 6:52 AM
F15539618: D21650.diff
Fri, Apr 25, 3:04 AM
F15535830: D21650.diff
Thu, Apr 24, 7:01 AM
F15527194: D21650.id51543.diff
Tue, Apr 22, 1:25 AM
F15509236: D21650.id51519.diff
Wed, Apr 16, 10:45 AM
Subscribers
None

Details

Summary

Ref T13559. If you create comments A and B, then delete comments A and B, then undo the deletion of A, the UI undoes the deletion of B instead.

This is becasue the undo rows are shipped down with a static scalar metadata reference. When copied multiple times to create multiple undo rows, they reference the same data object.

Preventing this in the general case is a problem with greater scope. For now, just avoid rendering these rows with any metadata so they don't alias a single data object.

Test Plan
  • Created comments A, B.
  • Deleted comments A, B.
  • Clicked "Undo" on A.
    • Before: Deletion of "B" undone.
    • After: Deletion of "A" undone.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable