diff options
author | kylechar <kylechar@chromium.org> | 2016-03-11 09:39:30 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-11 17:40:36 +0000 |
commit | de485eb849be99305925de2257da3b85325df2fd (patch) | |
tree | 003ec1bf8e012a5cca9d7f55d59eebe2588fbdf3 /ash | |
parent | d8863236eda7fe4a3bfae3bbc39d10bbf7be2a30 (diff) | |
download | chromium_src-de485eb849be99305925de2257da3b85325df2fd.zip chromium_src-de485eb849be99305925de2257da3b85325df2fd.tar.gz chromium_src-de485eb849be99305925de2257da3b85325df2fd.tar.bz2 |
Disable ash configuring display when running mash.
When running ash inside of mash_shell on a device, DisplayConfigurator
will request a NativeDisplayDelegate from Ozone. Ozone is initialized
only in the mus process, not in the ash process, so ash crashes at this
point.
Add accessor for configure_display_ to avoid crashing. The default
display size can be set via command line with --ash-host-window-bounds
flag until a better solution exists.
BUG=590096
Review URL: https://codereview.chromium.org/1782093003
Cr-Commit-Position: refs/heads/master@{#380663}
Diffstat (limited to 'ash')
-rw-r--r-- | ash/shell.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ash/shell.cc b/ash/shell.cc index d8987ee..6949d6c 100644 --- a/ash/shell.cc +++ b/ash/shell.cc @@ -866,6 +866,12 @@ void Shell::Init(const ShellInitParams& init_params) { display_manager_.get(), window_tree_host_manager_.get())); #if defined(OS_CHROMEOS) + // When running as part of mash, OzonePlatform is not initialized in the + // ash_sysui process. DisplayConfigurator will try to use OzonePlatform and + // crash. Instead, mash can manually set default display size using + // --ash-host-window-bounds flag. + if (in_mus_) + display_configurator_->set_configure_display(false); display_configurator_->Init(!gpu_support_->IsPanelFittingDisabled()); // The DBusThreadManager must outlive this Shell. See the DCHECK in ~Shell. |