diff --git a/packages/hydrooj/src/handler/problem.ts b/packages/hydrooj/src/handler/problem.ts index ba424cffd..0a38e646b 100644 --- a/packages/hydrooj/src/handler/problem.ts +++ b/packages/hydrooj/src/handler/problem.ts @@ -506,7 +506,7 @@ export class ProblemSubmitHandler extends ProblemDetailHandler { if (typeof config === 'string' || config === null) throw new ProblemConfigError(); if (config.type === 'objective') { lang = '_'; - } else if ((config.langs && !config.langs.includes(lang)) || setting.langs[lang].disabled) { + } else if ((config.langs && !config.langs.includes(lang)) || !setting.langs[lang] || setting.langs[lang].disabled) { throw new ProblemNotAllowLanguageError(); } if (pretest) {