From b539c90d02a34682a86c49b875ce2e7ff7b2ec7b Mon Sep 17 00:00:00 2001 From: Wyatt Allen Date: Fri, 7 Oct 2016 16:56:43 -0700 Subject: [PATCH] Cancel diff processing when the diff processor is detached Bug: Issue 4730 Change-Id: I50cae3c2c59b447befdccde3fcb4bf4a7dadcae8 --- .../elements/diff/gr-diff-processor/gr-diff-processor.js | 1 + .../diff/gr-diff-processor/gr-diff-processor_test.html | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor.js b/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor.js index 2dd4c915e1..f91c8ef03d 100644 --- a/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor.js +++ b/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor.js @@ -86,6 +86,7 @@ }, detached: function() { + this.cancel(); this.unlisten(window, 'scroll', '_handleWindowScroll'); }, diff --git a/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor_test.html b/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor_test.html index 4f8c532e80..c89d9b52da 100644 --- a/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor_test.html +++ b/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor_test.html @@ -591,5 +591,12 @@ limitations under the License. }); }); }); + + test('detaching cancels', function() { + element = fixture('basic'); + sandbox.stub(element, 'cancel'); + element.detached(); + assert(element.cancel.called); + }); });