diff --git a/src/transports/ipc.js b/src/transports/ipc.js index f050a01..37627ff 100644 --- a/src/transports/ipc.js +++ b/src/transports/ipc.js @@ -1,5 +1,7 @@ 'use strict'; +const os = require('os'); +const path = require('path'); const net = require('net'); const EventEmitter = require('events'); const fetch = require('node-fetch'); @@ -17,6 +19,13 @@ function getIPCPath(id) { if (process.platform === 'win32') { return `\\\\?\\pipe\\discord-ipc-${id}`; } + if (process.platform === 'darwin') { + let tmpdir = os.tmpdir(); + if (!tmpdir.endsWith('/T')) { + tmpdir = path.dirname(tmpdir); + } + return `${tmpdir}/discord-ipc-${id}`; + } const { env: { XDG_RUNTIME_DIR, TMPDIR, TMP, TEMP } } = process; const prefix = XDG_RUNTIME_DIR || TMPDIR || TMP || TEMP || '/tmp'; return `${prefix.replace(/\/$/, '')}/discord-ipc-${id}`;