diff --git a/html/src/app.js b/html/src/app.js index 454e4565..734ba544 100644 --- a/html/src/app.js +++ b/html/src/app.js @@ -9230,9 +9230,7 @@ speechSynthesis.getVoices(); $app.methods.compareCurrentVRCPlusIcon = function (userIcon) { try { - var url = new URL(API.currentUser.userIcon); - var pathArray = url.pathname.split('/'); - var currentUserIcon = pathArray[4]; + var currentUserIcon = extractFileId(API.currentUser.userIcon); if (userIcon === currentUserIcon) { return true; } @@ -10167,9 +10165,15 @@ speechSynthesis.getVoices(); var signatureSizeInBytes = await $app.genLength(base64SignatureFile); var avatarId = $app.avatarDialog.id; var { imageUrl } = $app.avatarDialog.ref; - var url = new URL(imageUrl); - var pathArray = url.pathname.split('/'); - var fileId = pathArray[4]; + var fileId = extractFileId(imageUrl); + if (!fileId) { + $app.$message({ + message: 'Current avatar image invalid', + type: 'error' + }); + clearFile(); + return; + } $app.avatarImage = { base64File, fileMd5, @@ -10449,9 +10453,10 @@ speechSynthesis.getVoices(); } else { return; } - var url = new URL(imageUrl); - var pathArray = url.pathname.split('/'); - var fileId = pathArray[4]; + var fileId = extractFileId(imageUrl); + if (!fileId) { + return; + } var params = { fileId };