diff --git a/lib/network.js b/lib/network.js index 3566ce6..8b475bc 100644 --- a/lib/network.js +++ b/lib/network.js @@ -1503,26 +1503,26 @@ function networkGatewayDefault(callback) { try { exec(cmd, { maxBuffer: 1024 * 20000 }, function (error, stdout) { if (!error) { - let lines = stdout.toString().split('\n').map(line => line.trim()); + const lines = stdout.toString().split('\n').map(line => line.trim()); result = util.getValue(lines, 'gateway'); - if (!result) { - cmd = 'netstat -rn | awk \'/default/ {print $2}\''; - exec(cmd, { maxBuffer: 1024 * 20000 }, function (error, stdout) { - lines = stdout.toString().split('\n').map(line => line.trim()); - result = lines.find(line => (/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(line))); - if (callback) { - callback(result); - } - resolve(result); - }); - } else { + } + if (!result) { + cmd = 'netstat -rn | awk \'/default/ {print $2}\''; + exec(cmd, { maxBuffer: 1024 * 20000 }, function (error, stdout) { + const lines = stdout.toString().split('\n').map(line => line.trim()); + result = lines.find(line => (/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(line))); if (callback) { callback(result); } resolve(result); + }); + } else { + if (callback) { + callback(result); } + resolve(result); } - }); + }); } catch (e) { if (callback) { callback(result); } resolve(result);