mirror of
https://github.com/MasterAcnolo/Freedom-Loader.git
synced 2026-07-29 18:25:47 +02:00
Fix: Discord RPC not Stoping #26
This commit is contained in:
7
main.js
7
main.js
@@ -7,7 +7,7 @@ const fs = require("fs");
|
|||||||
const { logger, logSessionStart, logSessionEnd, logDir } = require("./server/logger");
|
const { logger, logSessionStart, logSessionEnd, logDir } = require("./server/logger");
|
||||||
const { AutoUpdater } = require("./server/update.js");
|
const { AutoUpdater } = require("./server/update.js");
|
||||||
const { configFeatures } = require("./config.js");
|
const { configFeatures } = require("./config.js");
|
||||||
const { startRPC } = require("./server/discordRPC");
|
const { startRPC, stopRPC} = require("./server/discordRPC");
|
||||||
|
|
||||||
let mainWindow;
|
let mainWindow;
|
||||||
const logsFolderPath = logDir;
|
const logsFolderPath = logDir;
|
||||||
@@ -264,4 +264,7 @@ app.on("window-all-closed", () => {
|
|||||||
if (process.platform !== "darwin") app.quit();
|
if (process.platform !== "darwin") app.quit();
|
||||||
});
|
});
|
||||||
|
|
||||||
app.on("before-quit", () => logSessionEnd());
|
app.on("before-quit", () => {
|
||||||
|
logSessionEnd()
|
||||||
|
stopRPC()
|
||||||
|
});
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ function startRPC() {
|
|||||||
details: `Open Source Download Tools - ${config.version}`,
|
details: `Open Source Download Tools - ${config.version}`,
|
||||||
state: "masteracnolo.github.io/FreedomLoader",
|
state: "masteracnolo.github.io/FreedomLoader",
|
||||||
};
|
};
|
||||||
|
rpc.clearActivity()
|
||||||
rpc.setActivity(presence);
|
rpc.setActivity(presence);
|
||||||
|
|
||||||
// Met à jour la présence toutes les 15s
|
// Met à jour la présence toutes les 15s
|
||||||
@@ -26,27 +26,26 @@ function startRPC() {
|
|||||||
}, 15000);
|
}, 15000);
|
||||||
});
|
});
|
||||||
|
|
||||||
async function cleanExit() {
|
|
||||||
try {
|
|
||||||
if (intervalId) clearInterval(intervalId);
|
|
||||||
|
|
||||||
if (rpc && rpc.transport) {
|
|
||||||
await rpc.destroy();
|
|
||||||
}
|
|
||||||
} catch (err) {
|
|
||||||
logger.error("Error while closing the RPC:", err);
|
|
||||||
} finally {
|
|
||||||
process.exit();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
process.on("exit", cleanExit);
|
|
||||||
process.on("SIGINT", cleanExit);
|
|
||||||
process.on("SIGTERM", cleanExit);
|
|
||||||
|
|
||||||
rpc.login({ clientId }).catch(err => {
|
rpc.login({ clientId }).catch(err => {
|
||||||
logger.error("Unable to connect to the RPC:", err);
|
logger.error("Unable to connect to the RPC:", err);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = { startRPC };
|
async function stopRPC(){
|
||||||
|
try {
|
||||||
|
if (intervalId) clearInterval(intervalId);
|
||||||
|
|
||||||
|
if (rpc && rpc.transport) {
|
||||||
|
await rpc.clearActivity()
|
||||||
|
await rpc.destroy();
|
||||||
|
} else{
|
||||||
|
logger.error("Not Able to close RPC")
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (err) {
|
||||||
|
logger.error("Error while closing the RPC:", err);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
module.exports = { startRPC, stopRPC};
|
||||||
|
|||||||
Reference in New Issue
Block a user