diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index 2f14f738..99991e5e 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "2.20.47", + "version": "2.20.48", "bin": "bin/hydrooj.js", "main": "dist/loader.js", "typings": "dist/loader.d.ts", diff --git a/packages/hydrooj/src/upgrade.ts b/packages/hydrooj/src/upgrade.ts index 2d812512..0e29408e 100644 --- a/packages/hydrooj/src/upgrade.ts +++ b/packages/hydrooj/src/upgrade.ts @@ -236,9 +236,9 @@ const scripts: UpgradeScript[] = [ const _FRESH_INSTALL_IGNORE = 1; await iterateAllProblem(['data', 'additional_file'], async (pdoc) => { const $set: any = {}; - const td = pdoc.data.filter((f) => f.name); + const td = (pdoc.data || []).filter((f) => !!f.name); if (JSON.stringify(td) !== JSON.stringify(pdoc.data)) $set.data = td; - const af = pdoc.additional_file.filter((f) => f.name); + const af = (pdoc.additional_file || []).filter((f) => !!f.name); if (JSON.stringify(af) !== JSON.stringify(pdoc.additional_file)) $set.additional_file = af; if (Object.keys($set).length) await problem.edit(pdoc.domainId, pdoc.docId, $set); });