Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1873)

Unified Diff: content/renderer/media/canvas_capture_handler.cc

Issue 1829563002: Handle early destruction of CanvasCaptureHandler (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/renderer/media/canvas_capture_handler.cc
diff --git a/content/renderer/media/canvas_capture_handler.cc b/content/renderer/media/canvas_capture_handler.cc
index fd6e55f26818448d57e3964dac05b3526b0778f5..818ce40f3b22934ed0b26a0dd7132167c4a33e8d 100644
--- a/content/renderer/media/canvas_capture_handler.cc
+++ b/content/renderer/media/canvas_capture_handler.cc
@@ -58,15 +58,16 @@ class CanvasCaptureHandler::VideoCapturerSource
}
void StopCapture() override {
DCHECK(main_render_thread_checker_.CalledOnValidThread());
- canvas_handler_->StopVideoCapture();
+ if (canvas_handler_.get())
+ canvas_handler_->StopVideoCapture();
}
private:
double frame_rate_;
mcasas 2016/03/23 17:54:30 const? :)
emircan 2016/03/23 22:12:03 Done :)
// Bound to Main Render thread.
base::ThreadChecker main_render_thread_checker_;
- // CanvasCaptureHandler is owned by CanvasDrawListener in blink and
- // guaranteed to be alive during the lifetime of this class.
+ // CanvasCaptureHandler is owned by CanvasDrawListener in blink and might be
+ // destructed before StopCapture() call.
mcasas 2016/03/23 17:54:30 nit: s/destructed/destroyed/ ?
emircan 2016/03/23 22:12:03 Done.
base::WeakPtr<CanvasCaptureHandler> canvas_handler_;
};

Powered by Google App Engine
This is Rietveld 408576698