Bug 1376449 - Robustify startDrawing to prevent calling callback function after stop() has been called. r=pehrsons draft
authorKartikaya Gupta <kgupta@mozilla.com>
Tue, 27 Jun 2017 13:55:45 -0400
changeset 600638 fc5ac99c261120c10d43616650c94bdbf63d3bbc
parent 600405 af9a8cebd43fb23822be25c5d4d065d5e9e195b8
child 635048 f20a7fd0508a4a5a03885f9cc2d4bfe64baecee6
push id65820
push userkgupta@mozilla.com
push dateTue, 27 Jun 2017 17:56:09 +0000
reviewerspehrsons
bugs1376449
milestone56.0a1
Bug 1376449 - Robustify startDrawing to prevent calling callback function after stop() has been called. r=pehrsons MozReview-Commit-ID: 5vPtTHBGJhN
dom/canvas/test/captureStream_common.js
--- a/dom/canvas/test/captureStream_common.js
+++ b/dom/canvas/test/captureStream_common.js
@@ -37,18 +37,19 @@ CaptureStreamTestHelper.prototype = {
 
   /*
    * Perform the drawing operation on each animation frame until stop is called
    * on the returned object.
    */
   startDrawing: function (f) {
     var stop = false;
     var draw = () => {
+      if (stop) { return; }
       f();
-      if (!stop) { window.requestAnimationFrame(draw); }
+      window.requestAnimationFrame(draw);
     };
     draw();
     return { stop: () => stop = true };
   },
 
   /* Request a frame from the stream played by |video|. */
   requestFrame: function (video) {
     info("Requesting frame from " + video.id);