New issue
Advanced search Search tips

Issue 796171 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Jan 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

Going from regular fullscreen to locked fullscreen causes a crash

Project Member Reported by isandrk@chromium.org, Dec 19 2017

Issue description

Immersive fullscreen isn't being disabled (and it should) when going from ash::mojom::WindowStateType::FULLSCREEN to ash::mojom::WindowStateType::PINNED/TRUSTED_PINNED.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Dec 20 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f01db7e82f0c1a37161990cba445944de334d93d

commit f01db7e82f0c1a37161990cba445944de334d93d
Author: Ivan Sandrk <isandrk@google.com>
Date: Wed Dec 20 18:52:46 2017

Fix a crash when going to locked fullscreen from regular fullscreen

A CHECK(!IsFullscreen()) [1] is hit when going to locked fullscreen from regular
fullscreen. The issue happens because some code incorrectly detects whether we
are already in fullscreen (doesn't check for PINNED modes).

[1] https://cs.chromium.org/chromium/src/chrome/browser/ui/views/frame/browser_view.cc?type=cs&q=BrowserView::FullscreenStateChanged&l=964

Bug:  chromium:796171 
Change-Id: I24033a46d643da03faa1c50fa1ee0d7691bec1df
Reviewed-on: https://chromium-review.googlesource.com/779184
Reviewed-by: Peter Kotwicz <pkotwicz@chromium.org>
Reviewed-by: Mitsuru Oshima <oshima@chromium.org>
Commit-Queue: Ivan Ĺ andrk <isandrk@chromium.org>
Cr-Commit-Position: refs/heads/master@{#525389}
[modify] https://crrev.com/f01db7e82f0c1a37161990cba445944de334d93d/chrome/browser/ui/views/frame/immersive_mode_controller_ash.cc
[modify] https://crrev.com/f01db7e82f0c1a37161990cba445944de334d93d/chrome/browser/ui/views/frame/immersive_mode_controller_ash_unittest.cc

Labels: -Pri-3 Merge-Request-64 OS-Chrome Pri-1
Labels: M-64
Is this a M64 regression?  No details for the boards / versions impacted.  Need to confirm that this was introduced in M64.

Also added the M-64 label to ensure this request is discovered.
Project Member

Comment 4 by sheriffbot@chromium.org, Dec 21 2017

Labels: -Merge-Request-64 Hotlist-Merge-Review Merge-Review-64
This bug requires manual review: M64 has already been promoted to the beta branch, so this requires manual review
Please contact the milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), kbleicher@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Need to identify a component as well; thanks
Cc: kbleicher@chromium.org
Components: Enterprise
Done, sorry bout that
No worries; #3 still applies
This problem was always in the code, but the code path that causes the crash was never hit before I introduced the locked fullscreen feature (I discovered the crash while testing the new feature).

This problem isn't specific to any boards or versions. 
Labels: -Merge-Review-64 Merge-Rejected-64
I reviewed / approved the merge for the underlying issue forwarded (different bug).  Rejecting this request.
Labels: -M-64 M-65
Status: Fixed (was: Started)
Cc: jingwee@chromium.org
Status: Verified (was: Fixed)
As verified in M65.0.3325.9 10323.1.0 dev candy, no crash was observed in my tests for normal to full screen and back repeatedly as well as in the locked full screen mode.
Cc: -jingwee@chromium.org -kbleicher@chromium.org
I've been asked for repro steps for this, so I'm adding them now for posterity.

* Put a window into fullscreen mode
* With the window in fullscreen mode, switch it to locked fullscreen (CTRL+SHIFT+L using the attached extension [1])
* Expected: The window is now "locked" - you cannot exit the fullscreen mode (except for pressing CTRL+SHIFT+L again)
* Observed (faulty): Chrome crashes, or window isn't locked in fullscreen


This extension can be used for testing. CTRL+SHIFT+L toggles the locked fullscreen mode.

[1] https://drive.google.com/open?id=1lpu2esUy1NT_rERL880KPJ5nwpLrErnh

Steps for running the extension:
* run Chrome OS on your workstation (or alternately use a Chrome OS device)
* download that whole folder to the device
* open chrome://extensions/ on the device
* Enable Developer mode
* Load unpacked extension... -> choose the folder you just downloaded
* Make the current window go locked-fullscreen by pressing CTRL+SHIFT+L
 (exit with the same key combination)

Sign in to add a comment