Skip to content

Commit ebfa89c

Browse files
committed
vjudge: fix dep inject
1 parent 54ae550 commit ebfa89c

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

‎packages/vjudge/src/index.ts‎

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,8 @@ declare module 'cordis' {
184184
}
185185

186186
class VJudgeService extends Service {
187+
static inject = ['model:setting']; // Make sure langs are loaded before any consumer starts
188+
187189
constructor(ctx: Context) {
188190
super(ctx, 'vjudge');
189191
}
@@ -297,9 +299,13 @@ export async function apply(ctx: Context) {
297299
},
298300
]);
299301
});
300-
ctx.inject(['vjudge', 'model:setting'], async (c) => {
302+
ctx.inject(['vjudge'], async (c) => {
301303
for (const [k, v] of Object.entries(providers)) {
302-
if (!SystemModel.get(`vjudge.builtin-${k}-disable`)) c.vjudge.addProvider(k, v);
304+
try {
305+
if (!SystemModel.get(`vjudge.builtin-${k}-disable`)) c.vjudge.addProvider(k, v);
306+
} catch (e) {
307+
logger.error(`Error adding provider ${k}: ${e}`);
308+
}
303309
}
304310
c.inject(['check'], ({ check }) => {
305311
check.addChecker('Vjudge', async (_ctx, log, warn, error) => {

0 commit comments

Comments
 (0)