fix: tighten up logic in checkToPid internal method

This commit is contained in:
Julian Lam
2024-07-05 13:49:16 -04:00
parent 3a05171f3c
commit f629b20f2d

View File

@@ -8,6 +8,7 @@ const topics = require('../topics');
const categories = require('../categories'); const categories = require('../categories');
const groups = require('../groups'); const groups = require('../groups');
const privileges = require('../privileges'); const privileges = require('../privileges');
const activitypub = require('../activitypub');
const utils = require('../utils'); const utils = require('../utils');
module.exports = function (Posts) { module.exports = function (Posts) {
@@ -82,8 +83,8 @@ module.exports = function (Posts) {
} }
async function checkToPid(toPid, uid) { async function checkToPid(toPid, uid) {
if (!utils.isNumber(toPid)) { if (!utils.isNumber(toPid) && !activitypub.helpers.isUri(toPid)) {
return; throw new Error('[[error:invalid-pid]]');
} }
const [toPost, canViewToPid] = await Promise.all([ const [toPost, canViewToPid] = await Promise.all([