Launcher: extraction natives synchrone (race: grosses .so manquantes au boot)
This commit is contained in:
@@ -754,13 +754,14 @@ class ProcessBuilder {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
// Extract the file.
|
// Extract the file (synchrone, voir bloc 1.19+).
|
||||||
if(!shouldExclude){
|
if(!shouldExclude){
|
||||||
fs.writeFile(path.join(tempNativePath, fileName), zipEntries[i].getData(), (err) => {
|
try {
|
||||||
if(err){
|
fs.writeFileSync(path.join(tempNativePath, fileName), zipEntries[i].getData())
|
||||||
|
fs.writeFileSync(path.join(tempNativePath, 'java', fileName), zipEntries[i].getData())
|
||||||
|
} catch(err) {
|
||||||
logger.error('Error while extracting native library:', err)
|
logger.error('Error while extracting native library:', err)
|
||||||
}
|
}
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -806,14 +807,15 @@ class ProcessBuilder {
|
|||||||
const extractName = fileName.includes('/') ? fileName.substring(fileName.lastIndexOf('/')) : fileName
|
const extractName = fileName.includes('/') ? fileName.substring(fileName.lastIndexOf('/')) : fileName
|
||||||
|
|
||||||
// Extract the file (racine pour compat + sous-dossier java/ exigé par MC récent).
|
// Extract the file (racine pour compat + sous-dossier java/ exigé par MC récent).
|
||||||
|
// Synchrone : le jeu démarre aussitôt après, l'async faisait rater les grosses .so.
|
||||||
if(!shouldExclude){
|
if(!shouldExclude){
|
||||||
const data = zipEntries[i].getData()
|
const data = zipEntries[i].getData()
|
||||||
for(const dest of [path.join(tempNativePath, extractName), path.join(tempNativePath, 'java', extractName)]){
|
for(const dest of [path.join(tempNativePath, extractName), path.join(tempNativePath, 'java', extractName)]){
|
||||||
fs.writeFile(dest, data, (err) => {
|
try {
|
||||||
if(err){
|
fs.writeFileSync(dest, data)
|
||||||
|
} catch(err) {
|
||||||
logger.error('Error while extracting native library:', err)
|
logger.error('Error while extracting native library:', err)
|
||||||
}
|
}
|
||||||
})
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user