diff --git a/js/misc/ibusManager.js b/js/misc/ibusManager.js index c3022aaa6..6a5158779 100644 --- a/js/misc/ibusManager.js +++ b/js/misc/ibusManager.js @@ -115,16 +115,9 @@ class IBusManager extends Signals.EventEmitter { const env = launchContext.get_environment(); // Use DO_NOT_REAP_CHILD to avoid adouble-fork internally // since ibus-daemon refuses to start with init as its parent. - const [success_, pid] = GLib.spawn_async( + const pid = Shell.util_spawn_async( null, cmdLine, env, - GLib.SpawnFlags.SEARCH_PATH | GLib.SpawnFlags.DO_NOT_REAP_CHILD, - () => { - try { - global.context.restore_rlimit_nofile(); - } catch (err) { - } - } - ); + GLib.SpawnFlags.SEARCH_PATH | GLib.SpawnFlags.DO_NOT_REAP_CHILD); GLib.child_watch_add( GLib.PRIORITY_DEFAULT, pid, diff --git a/js/misc/util.js b/js/misc/util.js index 4c172988a..ca59d36be 100644 --- a/js/misc/util.js +++ b/js/misc/util.js @@ -118,19 +118,12 @@ export function spawnApp(argv) { * this will throw an error. */ export function trySpawn(argv) { - let success_, pid; + let pid; try { const launchContext = global.create_app_launch_context(0, -1); - [success_, pid] = GLib.spawn_async( + pid = Shell.util_spawn_async( null, argv, launchContext.get_environment(), - GLib.SpawnFlags.SEARCH_PATH | GLib.SpawnFlags.DO_NOT_REAP_CHILD, - () => { - try { - global.context.restore_rlimit_nofile(); - } catch (err) { - } - } - ); + GLib.SpawnFlags.SEARCH_PATH | GLib.SpawnFlags.DO_NOT_REAP_CHILD); } catch (err) { /* Rewrite the error in case of ENOENT */ if (err.matches(GLib.SpawnError, GLib.SpawnError.NOENT)) { diff --git a/js/ui/components/networkAgent.js b/js/ui/components/networkAgent.js index f6d5e1a3f..30695901a 100644 --- a/js/ui/components/networkAgent.js +++ b/js/ui/components/networkAgent.js @@ -456,18 +456,12 @@ class VPNRequestHandler extends Signals.EventEmitter { try { const launchContext = global.create_app_launch_context(0, -1); - let [success_, pid, stdin, stdout, stderr] = - GLib.spawn_async_with_pipes( + let [pid, stdin, stdout, stderr] = + Shell.util_spawn_async_with_pipes( null, /* pwd */ argv, launchContext.get_environment(), - GLib.SpawnFlags.DO_NOT_REAP_CHILD, - () => { - try { - global.context.restore_rlimit_nofile(); - } catch (err) { - } - }); + GLib.SpawnFlags.DO_NOT_REAP_CHILD); this._childPid = pid; this._stdin = new GioUnix.OutputStream({fd: stdin, close_fd: true});