<commit_before>process = global.process
events  = require 'events'
path    = require 'path'
url     = require 'url'
Module  = require 'module'

# We modified the original process.argv to let node.js load the
# atom-renderer.js, we need to restore it here.
process.argv.splice 1, 1

# Add renderer/api/lib to require's search paths, which contains javascript part
# of Atom's built-in libraries.
globalPaths = Module.globalPaths
globalPaths.push path.resolve(__dirname, '..', 'api', 'lib')
# And also app.
globalPaths.push path.join(process.resourcesPath, 'app')
globalPaths.push path.join(process.resourcesPath, 'app.asar')

# Import common settings.
require path.resolve(__dirname, '..', '..', 'common', 'lib', 'init')

# The global variable will be used by ipc for event dispatching
v8Util = process.atomBinding 'v8_util'
v8Util.setHiddenValue global, 'ipc', new events.EventEmitter

# Process command line arguments.
nodeIntegration = 'false'
for arg in process.argv
  if arg.indexOf('--guest-instance-id=') == 0
    # This is a guest web view.
    process.guestInstanceId = parseInt arg.substr(arg.indexOf('=') + 1)
    # Set the frame name to make AtomRendererClient recognize this guest.
    require('web-frame').setName 'ATOM_SHELL_GUEST_WEB_VIEW'
  else if arg.indexOf('--node-integration=') == 0
    nodeIntegration = arg.substr arg.indexOf('=') + 1
  else if arg.indexOf('--preload=') == 0
    preloadScript = arg.substr arg.indexOf('=') + 1

if location.protocol is 'chrome-devtools:'
  # Override some inspector APIs.
  require './inspector'
  nodeIntegration = 'true'
else if location.protocol is 'chrome-extension:'
  # Add implementations of chrome API.
  require './chrome-api'
  nodeIntegration = 'true'
else
  # Override default web functions.
  require './override'
  # Load webview tag implementation.
  unless process.guestInstanceId?
    require './web-view/web-view'
    require './web-view/web-view-attributes'

if nodeIntegration in ['true', 'all', 'except-iframe', 'manual-enable-iframe']
  # Export node bindings to global.
  global.require = require
  global.module = module

  # Set the __filename to the path of html file if it is file: protocol.
  if window.location.protocol is 'file:'
    pathname =
      if process.platform is 'win32' and window.location.pathname[0] is '/'
        window.location.pathname.substr 1
      else
        window.location.pathname
    global.__filename = path.normalize decodeURIComponent(pathname)
    global.__dirname = path.dirname global.__filename

    # Set module's filename so relative require can work as expected.
    module.filename = global.__filename

    # Also search for module under the html file.
    module.paths = module.paths.concat Module._nodeModulePaths(global.__dirname)
  else
    global.__filename = __filename
    global.__dirname = __dirname

  # Redirect window.onerror to uncaughtException.
  window.onerror = (error) ->
    if global.process.listeners('uncaughtException').length > 0
      global.process.emit 'uncaughtException', error
      true
    else
      false

  # Emit the 'exit' event when page is unloading.<commit_msg>emit error object on process.on('uncaughtException') in renderer<commit_after>process = global.process
events  = require 'events'
path    = require 'path'
url     = require 'url'
Module  = require 'module'

# We modified the original process.argv to let node.js load the
# atom-renderer.js, we need to restore it here.
process.argv.splice 1, 1

# Add renderer/api/lib to require's search paths, which contains javascript part
# of Atom's built-in libraries.
globalPaths = Module.globalPaths
globalPaths.push path.resolve(__dirname, '..', 'api', 'lib')
# And also app.
globalPaths.push path.join(process.resourcesPath, 'app')
globalPaths.push path.join(process.resourcesPath, 'app.asar')

# Import common settings.
require path.resolve(__dirname, '..', '..', 'common', 'lib', 'init')

# The global variable will be used by ipc for event dispatching
v8Util = process.atomBinding 'v8_util'
v8Util.setHiddenValue global, 'ipc', new events.EventEmitter

# Process command line arguments.
nodeIntegration = 'false'
for arg in process.argv
  if arg.indexOf('--guest-instance-id=') == 0
    # This is a guest web view.
    process.guestInstanceId = parseInt arg.substr(arg.indexOf('=') + 1)
    # Set the frame name to make AtomRendererClient recognize this guest.
    require('web-frame').setName 'ATOM_SHELL_GUEST_WEB_VIEW'
  else if arg.indexOf('--node-integration=') == 0
    nodeIntegration = arg.substr arg.indexOf('=') + 1
  else if arg.indexOf('--preload=') == 0
    preloadScript = arg.substr arg.indexOf('=') + 1

if location.protocol is 'chrome-devtools:'
  # Override some inspector APIs.
  require './inspector'
  nodeIntegration = 'true'
else if location.protocol is 'chrome-extension:'
  # Add implementations of chrome API.
  require './chrome-api'
  nodeIntegration = 'true'
else
  # Override default web functions.
  require './override'
  # Load webview tag implementation.
  unless process.guestInstanceId?
    require './web-view/web-view'
    require './web-view/web-view-attributes'

if nodeIntegration in ['true', 'all', 'except-iframe', 'manual-enable-iframe']
  # Export node bindings to global.
  global.require = require
  global.module = module

  # Set the __filename to the path of html file if it is file: protocol.
  if window.location.protocol is 'file:'
    pathname =
      if process.platform is 'win32' and window.location.pathname[0] is '/'
        window.location.pathname.substr 1
      else
        window.location.pathname
    global.__filename = path.normalize decodeURIComponent(pathname)
    global.__dirname = path.dirname global.__filename

    # Set module's filename so relative require can work as expected.
    module.filename = global.__filename

    # Also search for module under the html file.
    module.paths = module.paths.concat Module._nodeModulePaths(global.__dirname)
  else
    global.__filename = __filename
    global.__dirname = __dirname

  # Redirect window.onerror to uncaughtException.
  window.onerror = (message, filename, lineno, colno, error) ->
    if global.process.listeners('uncaughtException').length > 0
      global.process.emit 'uncaughtException', error
      true
    else
      false

  # Emit the 'exit' event when page is unloading.
{'fraction_non_alphanumeric': 0.10995425145922069, 'fraction_numerical': 0.005048114844612715, 'mean_word_length': 3.7740963855421685, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1657826', 'n_tokens_mistral': 1899, 'n_tokens_neox': 1845, 'n_words': 583}