1
0
mirror of https://github.com/gorhill/uBlock.git synced 2024-10-06 09:37:12 +02:00

Use async/await instead of chained thens

This commit is contained in:
Raymond Hill 2019-09-21 19:48:02 -04:00
parent 3568ccdd33
commit 8c47fa1a3e
No known key found for this signature in database
GPG Key ID: 25E1490B761470C2

View File

@ -1045,52 +1045,63 @@
}) })
), ),
µb.redirectEngine.toSelfie('selfie/redirectEngine'), µb.redirectEngine.toSelfie('selfie/redirectEngine'),
µb.staticExtFilteringEngine.toSelfie('selfie/staticExtFilteringEngine'), µb.staticExtFilteringEngine.toSelfie(
µb.staticNetFilteringEngine.toSelfie('selfie/staticNetFilteringEngine'), 'selfie/staticExtFilteringEngine'
),
µb.staticNetFilteringEngine.toSelfie(
'selfie/staticNetFilteringEngine'
),
]); ]);
µb.lz4Codec.relinquish(); µb.lz4Codec.relinquish();
}; };
const loadMain = async function() {
const details = await µb.assets.get('selfie/main');
if (
details instanceof Object === false ||
typeof details.content !== 'string' ||
details.content === ''
) {
return false;
}
let selfie;
try {
selfie = JSON.parse(details.content);
} catch(ex) {
}
if (
selfie instanceof Object === false ||
selfie.magic !== µb.systemSettings.selfieMagic
) {
return false;
}
µb.availableFilterLists = selfie.availableFilterLists;
return true;
};
const load = async function() { const load = async function() {
if ( destroyTimer !== undefined ) { if ( destroyTimer !== undefined ) {
return Promise.resolve(false); return false;
} }
try {
return Promise.all([ const results = await Promise.all([
µb.assets.get('selfie/main').then(details => { loadMain(),
if ( µb.redirectEngine.fromSelfie('selfie/redirectEngine'),
details instanceof Object === false || µb.staticExtFilteringEngine.fromSelfie(
typeof details.content !== 'string' || 'selfie/staticExtFilteringEngine'
details.content === '' ),
) { µb.staticNetFilteringEngine.fromSelfie(
return false; 'selfie/staticNetFilteringEngine'
} ),
let selfie; ]);
try { if ( results.every(v => v) ) {
selfie = JSON.parse(details.content);
} catch(ex) {
}
if (
selfie instanceof Object === false ||
selfie.magic !== µb.systemSettings.selfieMagic
) {
return false;
}
µb.availableFilterLists = selfie.availableFilterLists;
return true;
}),
µb.redirectEngine.fromSelfie('selfie/redirectEngine'),
µb.staticExtFilteringEngine.fromSelfie('selfie/staticExtFilteringEngine'),
µb.staticNetFilteringEngine.fromSelfie('selfie/staticNetFilteringEngine'),
]).then(results => {
if ( results.reduce((acc, v) => acc && v, true) ) {
return µb.loadRedirectResources(); return µb.loadRedirectResources();
} }
return false; }
}).catch(reason => { catch (reason) {
log.info(reason); log.info(reason);
return false; }
}); return false;
}; };
const destroy = function() { const destroy = function() {