From be3b5eb9d9da69e36929e84b4a1071074d4daf21 Mon Sep 17 00:00:00 2001 From: Nolan Lawson Date: Sat, 17 Aug 2019 15:35:31 -0700 Subject: [PATCH] fix: reduce number of blurhash performance measures (#1395) --- src/routes/_actions/createMakeProps.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/routes/_actions/createMakeProps.js b/src/routes/_actions/createMakeProps.js index 3f2418e1..4babc38f 100644 --- a/src/routes/_actions/createMakeProps.js +++ b/src/routes/_actions/createMakeProps.js @@ -1,6 +1,7 @@ import { database } from '../_database/database' import { decode as decodeBlurhash, init as initBlurhash } from '../_utils/blurhash' import { mark, stop } from '../_utils/marks' +import { get } from '../_utils/lodash-lite' async function getNotification (instanceName, timelineType, timelineValue, itemId) { return { @@ -28,15 +29,14 @@ function tryInitBlurhash () { async function decodeAllBlurhashes (statusOrNotification) { const status = statusOrNotification.status || statusOrNotification.notification.status - if (status && status.media_attachments) { + const mediaWithBlurhashes = get(status, ['media_attachments'], []).filter(_ => _.blurhash) + if (mediaWithBlurhashes.length) { mark(`decodeBlurhash-${status.id}`) - await Promise.all(status.media_attachments.map(async media => { - if (media.blurhash) { - try { - media.decodedBlurhash = await decodeBlurhash(media.blurhash) - } catch (err) { - console.warn('Could not decode blurhash, ignoring', err) - } + await Promise.all(mediaWithBlurhashes.map(async media => { + try { + media.decodedBlurhash = await decodeBlurhash(media.blurhash) + } catch (err) { + console.warn('Could not decode blurhash, ignoring', err) } })) stop(`decodeBlurhash-${status.id}`)