electron/patches/node/feat_initialize_asar_support.patch
electron-roller[bot] 1766511e34
chore: bump node to v18.18.0 (main) (#39915)
* chore: bump node in DEPS to v18.18.0

* child_process: harden against prototype pollution

https://github.com/nodejs/node/pull/48726

* deps: upgrade to libuv 1.46.0

https://github.com/nodejs/node/pull/49591

* module: reduce url invocations in esm/load.js

https://github.com/nodejs/node/pull/48337

* Revert "test: remove test-crypto-keygen flaky designation"

https://github.com/nodejs/node/pull/48652

* fix: FTBTFS in ada dep

https://github.com/ada-url/ada/pull/464
https://github.com/ada-url/idna/pull/31

* fix: force_colors snapshot line number

* chore: fixup patch indices

* chore: update filenames.json

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2023-09-20 16:13:43 -04:00

38 lines
1.2 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Shelley Vohr <shelley.vohr@gmail.com>
Date: Thu, 13 Sep 2018 08:56:07 -0700
Subject: feat: initialize asar support
This patch initializes asar support in Node.js.
diff --git a/lib/internal/process/pre_execution.js b/lib/internal/process/pre_execution.js
index b4a24bbffb6c43638d13063e85b6cfba5c0cc9c7..fcbd9ee1af002bc176937e6bb5af55791b2f64b2 100644
--- a/lib/internal/process/pre_execution.js
+++ b/lib/internal/process/pre_execution.js
@@ -52,6 +52,8 @@ function prepareWorkerThreadExecution() {
});
}
+
+let processLinkedBinding = process._linkedBinding;
function prepareExecution(options) {
const { expandArgv1, initializeModules, isMainThread } = options;
@@ -130,12 +132,17 @@ function setupUserModules() {
loadPreloadModules();
// Need to be done after --require setup.
initializeFrozenIntrinsics();
+ setupAsarSupport();
}
function refreshRuntimeOptions() {
refreshOptions();
}
+function setupAsarSupport() {
+ processLinkedBinding('electron_common_asar').initAsarSupport(require);
+}
+
function patchProcessObject(expandArgv1) {
const binding = internalBinding('process_methods');
binding.patchProcessObject(process);