feat: expose missing process APIs in sandboxed renderers (#13505)
This commit is contained in:
parent
f82f89b2a3
commit
fc85d02786
11 changed files with 95 additions and 35 deletions
|
@ -36,7 +36,7 @@ const loadedModules = new Map([
|
|||
])
|
||||
|
||||
const {
|
||||
preloadSrc, preloadError, platform, env
|
||||
preloadSrc, preloadError, process: processProps
|
||||
} = electron.ipcRenderer.sendSync('ELECTRON_BROWSER_SANDBOX_LOAD')
|
||||
|
||||
require('../renderer/web-frame-init')()
|
||||
|
@ -49,10 +49,16 @@ preloadProcess.hang = () => binding.hang()
|
|||
preloadProcess.getHeapStatistics = () => binding.getHeapStatistics()
|
||||
preloadProcess.getProcessMemoryInfo = () => binding.getProcessMemoryInfo()
|
||||
preloadProcess.getSystemMemoryInfo = () => binding.getSystemMemoryInfo()
|
||||
preloadProcess.getCPUUsage = () => binding.getCPUUsage()
|
||||
preloadProcess.getIOCounters = () => binding.getIOCounters()
|
||||
preloadProcess.argv = process.argv = binding.getArgv()
|
||||
preloadProcess.execPath = process.execPath = binding.getExecPath()
|
||||
preloadProcess.platform = process.platform = platform
|
||||
preloadProcess.env = process.env = env
|
||||
preloadProcess.pid = process.pid = binding.getPid()
|
||||
preloadProcess.resourcesPath = binding.getResourcesPath()
|
||||
preloadProcess.sandboxed = true
|
||||
preloadProcess.type = 'renderer'
|
||||
Object.assign(preloadProcess, processProps)
|
||||
Object.assign(process, processProps)
|
||||
|
||||
process.on('exit', () => preloadProcess.emit('exit'))
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue