diff options
author | skuhne@chromium.org <skuhne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-01 06:00:03 +0000 |
---|---|---|
committer | skuhne@chromium.org <skuhne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-01 06:00:03 +0000 |
commit | bebe8a3f3d580c9e270e07304f57c63c444a4d6c (patch) | |
tree | cf9c48887c7f84176c8b2777a4a32970bf3c7ad9 /ash/wm/caption_buttons/maximize_bubble_controller.cc | |
parent | 9b46b6c0059f6968bee08c87020548a7e0a7d720 (diff) | |
download | chromium_src-bebe8a3f3d580c9e270e07304f57c63c444a4d6c.zip chromium_src-bebe8a3f3d580c9e270e07304f57c63c444a4d6c.tar.gz chromium_src-bebe8a3f3d580c9e270e07304f57c63c444a4d6c.tar.bz2 |
Fixing crash Report - Magic Signature: views::View::ConvertPointToScreen
The problem:
- The BubbleDelegateView tracks the destruction of the widget which owns the anchor view.
- The anchor view gets queried dynamically for its location upon any position change of the anchor widget.
- When a view gets deleted, the widget does not have to be deleted.
Taking that all together and looking at the shelf it is possible to get to the following scenario:
The user puts the shelf into auto hiding mode (so it changes its location). The bubble gets shown. The button - which was used for the anchor - gets deleted, which triggers the destruction of the bubble. The bubble however gets faded out slowly (while the shelf shifts out of view). In this case the location would get queried, but the view is already gone.
BUG=297676
TEST=unittest, but none visually since there isn't a simple reproducible case known
Review URL: https://codereview.chromium.org/24469006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226158 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/wm/caption_buttons/maximize_bubble_controller.cc')
-rw-r--r-- | ash/wm/caption_buttons/maximize_bubble_controller.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ash/wm/caption_buttons/maximize_bubble_controller.cc b/ash/wm/caption_buttons/maximize_bubble_controller.cc index 088db3c..dbce36a 100644 --- a/ash/wm/caption_buttons/maximize_bubble_controller.cc +++ b/ash/wm/caption_buttons/maximize_bubble_controller.cc @@ -416,7 +416,7 @@ MaximizeBubbleController::Bubble::Bubble( SetAlignment(views::BubbleBorder::ALIGN_EDGE_TO_ANCHOR_EDGE); bubble_widget_->non_client_view()->frame_view()->set_background(NULL); - bubble_border_ = new MaximizeBubbleBorder(this, anchor_view()); + bubble_border_ = new MaximizeBubbleBorder(this, GetAnchorView()); GetBubbleFrameView()->SetBubbleBorder(bubble_border_); GetBubbleFrameView()->set_background(NULL); |