mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-20 01:38:19 +08:00
utils: fix subtask parser
This commit is contained in:
1 file changed
+3
@@ -314,6 +314,7 @@ export function readSubtasksFromFiles(files: string[], config) {
|
|||||||
const subtask: Record<number, ParsedSubtask> = {};
|
const subtask: Record<number, ParsedSubtask> = {};
|
||||||
for (const s of config.subtasks || []) if (s.id) subtask[s.id] = s;
|
for (const s of config.subtasks || []) if (s.id) subtask[s.id] = s;
|
||||||
for (const file of files) {
|
for (const file of files) {
|
||||||
|
let match = false;
|
||||||
for (const rule of SubtaskMatcher) {
|
for (const rule of SubtaskMatcher) {
|
||||||
const data = rule.regex.exec(file);
|
const data = rule.regex.exec(file);
|
||||||
if (!data) continue;
|
if (!data) continue;
|
||||||
@@ -324,6 +325,7 @@ export function readSubtasksFromFiles(files: string[], config) {
|
|||||||
if (config.noOutputFile) c.output = '/dev/null';
|
if (config.noOutputFile) c.output = '/dev/null';
|
||||||
else c.output = func(data);
|
else c.output = func(data);
|
||||||
if (c.output === '/dev/null' || files.includes(c.output)) {
|
if (c.output === '/dev/null' || files.includes(c.output)) {
|
||||||
|
match = true;
|
||||||
if (!subtask[sid]) {
|
if (!subtask[sid]) {
|
||||||
subtask[sid] = {
|
subtask[sid] = {
|
||||||
time: config.time,
|
time: config.time,
|
||||||
@@ -336,6 +338,7 @@ export function readSubtasksFromFiles(files: string[], config) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (match) break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return Object.values(subtask);
|
return Object.values(subtask);
|
||||||
|
|||||||
Reference in new issue
Block a user