core: fix patch

pull/565/head
undefined 1 year ago
parent d55cf5ae45
commit d8d1776260
No known key found for this signature in database

@ -15,16 +15,17 @@ export function register(cli: CAC) {
return; return;
} }
logger.info('Patching %s', mod); logger.info('Patching %s', mod);
const res = await superagent.get(patch); const res = await superagent.get(patch).responseType('arraybuffer');
logger.info('Downloaded patch'); logger.info('Downloaded patch');
for (let i = 0; i <= 100; i++) { for (let i = 0; i <= 100; i++) {
const fp = path.join(path.dirname(mod), `${mod}.${i}.patch`); const fp = path.join(path.dirname(mod), `${path.basename(mod)}.${i}.patch`);
if (fs.existsSync(fp)) continue; if (fs.existsSync(fp)) continue;
patch = fp; patch = fp;
break; break;
} }
await fs.writeFile(patch, res.text); await fs.writeFile(patch, res.body);
child.execSync(`patch ${mod} -o ${mod} < ${patch}`); child.execSync(`patch ${mod} -o ${mod}.tmp < ${patch}`);
await fs.move(`${mod}.tmp`, mod);
logger.info('Patched %s', mod); logger.info('Patched %s', mod);
}); });

Loading…
Cancel
Save