summaryrefslogtreecommitdiff
path: root/packages/backend/src/core/CustomEmojiService.ts
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2024-08-05 09:27:06 +0100
committerdakkar <dakkar@thenautilus.net>2024-08-05 09:27:06 +0100
commit1e86cba7dc1cf81d03b805529fc0556c96ff286e (patch)
tree7cff23eac8a03571ca6d24368ddb83e2413185a0 /packages/backend/src/core/CustomEmojiService.ts
parentmerge: error out when we can't start workers - fixes #586 (!578) (diff)
downloadsharkey-1e86cba7dc1cf81d03b805529fc0556c96ff286e.tar.gz
sharkey-1e86cba7dc1cf81d03b805529fc0556c96ff286e.tar.bz2
sharkey-1e86cba7dc1cf81d03b805529fc0556c96ff286e.zip
delete old emoji file when replaced - fixes #608
it's the same code that 5f7fc54ee9359d7dae82ad70e89f930d6a2b2e61 added to `delete` and `deleteBulk`, with the extra check that we're not deleting the same file we're setting
Diffstat (limited to 'packages/backend/src/core/CustomEmojiService.ts')
-rw-r--r--packages/backend/src/core/CustomEmojiService.ts7
1 files changed, 7 insertions, 0 deletions
diff --git a/packages/backend/src/core/CustomEmojiService.ts b/packages/backend/src/core/CustomEmojiService.ts
index bfbc2b172d..eea0f9228d 100644
--- a/packages/backend/src/core/CustomEmojiService.ts
+++ b/packages/backend/src/core/CustomEmojiService.ts
@@ -142,6 +142,13 @@ export class CustomEmojiService implements OnApplicationShutdown {
this.localEmojisCache.refresh();
+ if (data.driveFile != null) {
+ const file = await this.driveFilesRepository.findOneBy({ url: emoji.originalUrl, userHost: emoji.host ? emoji.host : IsNull() });
+ if (file && file.id != data.driveFile.id) {
+ await this.driveService.deleteFile(file, false, moderator ? moderator : undefined);
+ }
+ }
+
const packed = await this.emojiEntityService.packDetailed(emoji.id);
if (emoji.name === data.name) {