From 23a2dc8da8b62b771ef4b0a803cd1e0dc2257d72 Mon Sep 17 00:00:00 2001 From: "sky@chromium.org" Date: Thu, 22 Aug 2013 15:04:22 +0000 Subject: Refactors CaptureController so that both views and ash can use it. CaptureController and DesktopCaptureClient differed only slightly, and the latter wasn't always cleaning things up leading to the possibility of a use after free. Specifically DesktopCaptureClient::SetCapture() invokes OnOtherCaptureClientTookCapture() *after* updating the capture_window_. SetCapture in term invokes SetCapture(NULL) on the other DesktopCaptureClient, which call GetCaptureWindow(), which returns the first non-null capture_client_, which can be the new one when it wants the old one. This change also means when both ash and aura-windows are running at the same time capture is correctly updated between the two. BUG=268648 TEST=covered by tests. R=erg@chromium.org, oshima@chromium.org Review URL: https://codereview.chromium.org/22929007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219019 0039d316-1c4b-4281-b951-d872f2087c98 --- ash/shell.h | 1 - 1 file changed, 1 deletion(-) (limited to 'ash/shell.h') diff --git a/ash/shell.h b/ash/shell.h index 934968c..5068815 100644 --- a/ash/shell.h +++ b/ash/shell.h @@ -547,7 +547,6 @@ class ASH_EXPORT Shell scoped_ptr app_list_controller_; scoped_ptr activation_controller_; - scoped_ptr capture_controller_; scoped_ptr drag_drop_controller_; scoped_ptr resize_shadow_controller_; scoped_ptr shadow_controller_; -- cgit v1.1