summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2018-10-13 23:12:48 +0900
committersyuilo <syuilotan@yahoo.co.jp>2018-10-13 23:12:48 +0900
commit273f67e26874b6e511c985ea33cbe0e941923f78 (patch)
tree7b90d3803cb88ea811fe6a198831ed93a160e4d5 /src
parent10.13.0 (diff)
downloadmisskey-273f67e26874b6e511c985ea33cbe0e941923f78.tar.gz
misskey-273f67e26874b6e511c985ea33cbe0e941923f78.tar.bz2
misskey-273f67e26874b6e511c985ea33cbe0e941923f78.zip
Fix bug
Diffstat (limited to 'src')
-rw-r--r--src/services/i/pin.ts8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/services/i/pin.ts b/src/services/i/pin.ts
index ff390eb781..1544b0fdc7 100644
--- a/src/services/i/pin.ts
+++ b/src/services/i/pin.ts
@@ -1,7 +1,7 @@
import config from '../../config';
import * as mongo from 'mongodb';
import User, { isLocalUser, isRemoteUser, ILocalUser, IUser } from '../../models/user';
-import Note from '../../models/note';
+import Note, { packMany } from '../../models/note';
import Following from '../../models/following';
import renderAdd from '../../remote/activitypub/renderer/add';
import renderRemove from '../../remote/activitypub/renderer/remove';
@@ -27,11 +27,11 @@ export async function addPinned(user: IUser, noteId: mongo.ObjectID) {
let pinnedNoteIds = user.pinnedNoteIds || [];
//#region 現在ピン留め投稿している投稿が実際にデータベースに存在しているのかチェック
- // データベースの欠損などで存在していない場合があるので。
+ // データベースの欠損などで存在していない(または破損している)場合があるので。
// 存在していなかったらピン留め投稿から外す
- const pinnedNotes = (await Promise.all(pinnedNoteIds.map(id => Note.findOne({ _id: id })))).filter(x => x != null);
+ const pinnedNotes = await packMany(pinnedNoteIds, null, { detail: true });
- pinnedNoteIds = pinnedNoteIds.filter(id => pinnedNotes.some(n => n._id.equals(id)));
+ pinnedNoteIds = pinnedNoteIds.filter(id => pinnedNotes.some(n => n.id.toString() === id.toHexString()));
//#endregion
if (pinnedNoteIds.length >= 5) {