[Windows 7] Chrome processes spawned from applications that use Job Objects do not start correctly
Reported by
nikh...@dropbox.com,
Oct 10 2017
|
||||
Issue descriptionUserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:56.0) Gecko/20100101 Firefox/56.0 Steps to reproduce the problem: 1. Create an application that runs under a windows job object (see attached script) 2. Launch chrome from such an application What is the expected behavior? Chrome should load google.com What went wrong? google.com is not displayed. the gray screen is displayed. any new tabs opened also show the same behavior. The attached python script can be run in a stock python installation on Windows 7 to reproduce the problem. Job Objects are used by applications to manage children and impose resource limits etc. When such applications launch chrome (for user login etc.), Chrome should function correctly. The solution in the script of using flags to cause chrome to not be in the job is unsatisfactory as the parent application is then unable to control aspects of chrome's behavior. Did this work before? N/A Chrome version: 61.0.3163.100 (Official Build) (64-bit) (cohort: Stable) Channel: stable OS Version: 7 Flash Version: 27.0.0.130 C:\Users\vagrant\AppData\Local\Google\Chrome\User Data\PepperFlash\27.0.0.130\pepflashplayer.dll
,
Oct 30 2017
Thanks For filing the issue! We are unable to execute with provided chromeissue.py file in chrome.Please create new profile without extensions and apps.Re-check once in latest versions of chrome and let us know the observations and please provide us with a sample URL of the issue which would help us to triage the issue further. Thanks in Advance.
,
Nov 18 2017
Yes I'm able to reproduce it even on Version 62.0.3202.94 (Official Build) (64-bit). It is important to run the script from command line python, not IDLE. Make sure the AssignProcessToJob() call succeeds by adding this line after it.
print("assign succeeded?", suc != 0, k32.GetLastError())
This will only work if the calling process is also in a job.
,
Nov 18 2017
Thank you for providing more feedback. Adding requester "rbasuvula@chromium.org" to the cc list and removing "Needs-Feedback" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Nov 21 2017
Google Chrome on Windows has used Job Objects since the very initial release in 2008. This is an essential part of the chromium sandbox. You can read more about the sandbox at https://chromium.googlesource.com/chromium/src/+/master/docs/design/sandbox.md#sandbox-restrictions MSDN has plentiful documentation on job objects, and in particular when nesting job objects: https://msdn.microsoft.com/en-us/library/windows/desktop/ms684161.aspx#managing_a_process_tree_that_uses_job_objects In particular, nesting job objects is not supported until Windows 8. So this is an inherent limitation of this older operating system, not Chrome itself. As such I'm marking as WontFix. Feel free to ask follow up questions. |
||||
►
Sign in to add a comment |
||||
Comment 1 by ajha@chromium.org
, Oct 17 2017