| OLD | NEW | 
|    1 /* |    1 /* | 
|    2  * This file is part of Adblock Plus <https://adblockplus.org/>, |    2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 
|    3  * Copyright (C) 2006-present eyeo GmbH |    3  * Copyright (C) 2006-present eyeo GmbH | 
|    4  * |    4  * | 
|    5  * Adblock Plus is free software: you can redistribute it and/or modify |    5  * Adblock Plus is free software: you can redistribute it and/or modify | 
|    6  * it under the terms of the GNU General Public License version 3 as |    6  * it under the terms of the GNU General Public License version 3 as | 
|    7  * published by the Free Software Foundation. |    7  * published by the Free Software Foundation. | 
|    8  * |    8  * | 
|    9  * Adblock Plus is distributed in the hope that it will be useful, |    9  * Adblock Plus is distributed in the hope that it will be useful, | 
|   10  * but WITHOUT ANY WARRANTY; without even the implied warranty of |   10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| (...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  172         arguments: scriptArgs.map(arg => ({value: arg})) |  172         arguments: scriptArgs.map(arg => ({value: arg})) | 
|  173       }); |  173       }); | 
|  174       if (callResult.exceptionDetails) |  174       if (callResult.exceptionDetails) | 
|  175         throwException(callResult.exceptionDetails, scriptName); |  175         throwException(callResult.exceptionDetails, scriptName); | 
|  176  |  176  | 
|  177       let promiseResult = await Runtime.awaitPromise({ |  177       let promiseResult = await Runtime.awaitPromise({ | 
|  178         promiseObjectId: callResult.result.objectId |  178         promiseObjectId: callResult.result.objectId | 
|  179       }); |  179       }); | 
|  180       if (promiseResult.exceptionDetails) |  180       if (promiseResult.exceptionDetails) | 
|  181         throwException(promiseResult.exceptionDetails, scriptName); |  181         throwException(promiseResult.exceptionDetails, scriptName); | 
 |  182  | 
 |  183       return Runtime.evaluate({ | 
 |  184         expression: "window._consoleLogs", | 
 |  185         returnByValue: true | 
 |  186       }).then(result => | 
 |  187       { | 
 |  188         if (result.result.value.failures != 0) | 
 |  189           return Promise.reject("Chromium (Remote Interface)"); | 
 |  190       }); | 
|  182     } |  191     } | 
|  183     finally |  192     finally | 
|  184     { |  193     { | 
|  185       client.close(); |  194       client.close(); | 
|  186     } |  195     } | 
|  187   }); |  196   }); | 
|  188 } |  197 } | 
|  189  |  198  | 
|  190 module.exports = function(script, scriptName, ...scriptArgs) |  199 module.exports = function(script, scriptName, ...scriptArgs) | 
|  191 { |  200 { | 
|  192   return ensureChromium(CHROMIUM_REVISION).then(chromiumPath => |  201   return ensureChromium(CHROMIUM_REVISION).then(chromiumPath => | 
|  193   { |  202   { | 
|  194     let child = startChromium(chromiumPath); |  203     let child = startChromium(chromiumPath); | 
|  195     return Promise.race([ |  204     return Promise.race([ | 
|  196       child.done, |  205       child.done, | 
|  197       runScript(script, scriptName, scriptArgs) |  206       runScript(script, scriptName, scriptArgs) | 
|  198     ]).then(result => |  207     ]).then(result => | 
|  199     { |  208     { | 
|  200       child.kill(); |  209       child.kill(); | 
|  201       return result; |  210       return result; | 
|  202     }).catch(error => |  211     }).catch(error => | 
|  203     { |  212     { | 
|  204       child.kill(); |  213       child.kill(); | 
|  205       throw error; |  214       return Promise.reject(error); | 
|  206     }); |  215     }); | 
|  207   }); |  216   }); | 
|  208 }; |  217 }; | 
| OLD | NEW |