Fix crash in pending_status_builder

Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
improve-ci
marcin mikołajczak 2022-01-15 14:29:32 +01:00
rodzic c89fcb80d2
commit 0647394f5f
1 zmienionych plików z 11 dodań i 10 usunięć

Wyświetl plik

@ -11,12 +11,19 @@ export const buildStatus = (state, pendingStatus, idempotencyKey) => {
const me = state.get('me'); const me = state.get('me');
const account = getAccount(state, me); const account = getAccount(state, me);
let replyToSelf = false; let mentions;
if (pendingStatus.get('in_reply_to_id')) { if (pendingStatus.get('in_reply_to_id')) {
const inReplyTo = getStatus(state, { id: pendingStatus.get('in_reply_to_id') }); const inReplyTo = getStatus(state, { id: pendingStatus.get('in_reply_to_id') });
if (inReplyTo.getIn(['account', 'id']) === me) if (inReplyTo.getIn(['account', 'id']) === me) {
replyToSelf = true; mentions = ImmutableOrderedSet([account.get('acct')]).union(pendingStatus.get('to', []));
} else {
mentions = pendingStatus.get('to', []);
}
mentions = mentions.map(mention => ({
username: mention.split('@')[0],
}));
} }
const status = normalizeStatus({ const status = normalizeStatus({
@ -34,13 +41,7 @@ export const buildStatus = (state, pendingStatus, idempotencyKey) => {
in_reply_to_id: pendingStatus.get('in_reply_to_id'), in_reply_to_id: pendingStatus.get('in_reply_to_id'),
language: null, language: null,
media_attachments: pendingStatus.get('media_ids').map(id => ({ id })), media_attachments: pendingStatus.get('media_ids').map(id => ({ id })),
mentions: ( mentions,
replyToSelf
? ImmutableOrderedSet([account.get('acct')]).union(pendingStatus.get('to'))
: pendingStatus.get('to')
).map(mention => ({
username: mention.split('@')[0],
})),
muted: false, muted: false,
pinned: false, pinned: false,
poll: pendingStatus.get('poll', null), poll: pendingStatus.get('poll', null),