From ae376774e47e320a2a0c6020a1130aa08659aee9 Mon Sep 17 00:00:00 2001 From: Johannes Zellner Date: Wed, 28 Sep 2022 15:10:17 +0200 Subject: [PATCH] Ensure we don't put empty applink icon buffers in db --- src/applinks.js | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/applinks.js b/src/applinks.js index 72cf26e5d..e41e62626 100644 --- a/src/applinks.js +++ b/src/applinks.js @@ -146,17 +146,15 @@ async function update(applinkId, applink) { debug(`update: ${applinkId} ${applink.upstreamUri}`, applink); - if ('icon' in applink) { - if (applink.icon) { - if (!validator.isBase64(applink.icon)) throw new BoxError(BoxError.BAD_FIELD, 'icon is not base64'); - applink.icon = Buffer.from(applink.icon, 'base64'); - } + if (applink.icon) { + if (!validator.isBase64(applink.icon)) throw new BoxError(BoxError.BAD_FIELD, 'icon is not base64'); + applink.icon = Buffer.from(applink.icon, 'base64'); } await detectMetaInfo(applink); const query = 'UPDATE applinks SET label=?, icon=?, upstreamUri=?, tagsJson=?, accessRestrictionJson=? WHERE id = ?'; - const args = [ applink.label, applink.icon, applink.upstreamUri, applink.tags ? JSON.stringify(applink.tags) : null, applink.accessRestriction ? JSON.stringify(applink.accessRestriction) : null, applinkId ]; + const args = [ applink.label, applink.icon || null, applink.upstreamUri, applink.tags ? JSON.stringify(applink.tags) : null, applink.accessRestriction ? JSON.stringify(applink.accessRestriction) : null, applinkId ]; const result = await database.query(query, args); if (result.affectedRows !== 1) throw new BoxError(BoxError.NOT_FOUND, 'Applink not found');