systeminformation 5.11.4 → 5.11.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/filesystem.js CHANGED
@@ -1239,20 +1239,26 @@ function diskLayout(callback) {
1239
1239
  // S.M.A.R.T
1240
1240
  data.results.shift();
1241
1241
  data.results.shift();
1242
- data.results.forEach((smartStr) => {
1243
- const smartData = JSON.parse(smartStr);
1244
- if (smartData.serial_number) {
1245
- const serialNum = smartData.serial_number;
1246
- let i = util.findObjectByKey(result, 'serialNum', serialNum);
1247
- if (i != -1) {
1248
- result[i].smartStatus = (smartData.smart_status.passed ? 'Ok' : (smartData.smart_status.passed === false ? 'Predicted Failure' : 'unknown'));
1249
- if (smartData.temperature && smartData.temperature.current) {
1250
- result[i].temperature = smartData.temperature.current;
1242
+ if (data.results.length) {
1243
+ data.results.forEach((smartStr) => {
1244
+ try {
1245
+ const smartData = JSON.parse(smartStr);
1246
+ if (smartData.serial_number) {
1247
+ const serialNum = smartData.serial_number;
1248
+ let i = util.findObjectByKey(result, 'serialNum', serialNum);
1249
+ if (i != -1) {
1250
+ result[i].smartStatus = (smartData.smart_status.passed ? 'Ok' : (smartData.smart_status.passed === false ? 'Predicted Failure' : 'unknown'));
1251
+ if (smartData.temperature && smartData.temperature.current) {
1252
+ result[i].temperature = smartData.temperature.current;
1253
+ }
1254
+ result[i].smartData = smartData;
1255
+ }
1251
1256
  }
1252
- result[i].smartData = smartData;
1257
+ } catch (e) {
1258
+ util.noop();
1253
1259
  }
1254
- }
1255
- });
1260
+ });
1261
+ }
1256
1262
  if (callback) {
1257
1263
  callback(result);
1258
1264
  }
package/lib/network.js CHANGED
@@ -254,8 +254,8 @@ function getWindowsNics() {
254
254
  try {
255
255
  util.powerShell(cmd).then(data => {
256
256
  data = data.split('#-#-#-#');
257
- const nsections = data[0].split(/\n\s*\n/);
258
- const nconfigsections = data[1].split(/\n\s*\n/);
257
+ const nsections = (data[0] || '').split(/\n\s*\n/);
258
+ const nconfigsections = (data[1] || '').split(/\n\s*\n/);
259
259
  resolve(parseLinesWindowsNics(nsections, nconfigsections));
260
260
  });
261
261
  } catch (e) {
package/lib/users.js CHANGED
@@ -262,10 +262,10 @@ function users(callback) {
262
262
  // let accounts = parseWinAccounts(data[0].split(/\n\s*\n/));
263
263
  if (data) {
264
264
  data = data.split('#-#-#-#');
265
- let sessions = parseWinSessions(data[0].split(/\n\s*\n/));
266
- let loggedons = parseWinLoggedOn(data[1].split(/\n\s*\n/));
267
- let queryUser = parseWinUsersQuery(data[3].split('\r\n'));
268
- let users = parseWinUsers(data[2].split(/\n\s*\n/), queryUser);
265
+ let sessions = parseWinSessions((data[0] || '').split(/\n\s*\n/));
266
+ let loggedons = parseWinLoggedOn((data[1] || '').split(/\n\s*\n/));
267
+ let queryUser = parseWinUsersQuery((data[3] || '').split('\r\n'));
268
+ let users = parseWinUsers((data[2] || '').split(/\n\s*\n/), queryUser);
269
269
  for (let id in loggedons) {
270
270
  if ({}.hasOwnProperty.call(loggedons, id)) {
271
271
  loggedons[id].dateTime = {}.hasOwnProperty.call(sessions, id) ? sessions[id] : '';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "systeminformation",
3
- "version": "5.11.4",
3
+ "version": "5.11.5",
4
4
  "description": "Advanced, lightweight system and OS information library",
5
5
  "license": "MIT",
6
6
  "author": "Sebastian Hildebrandt <hildebrandt@plus-innovations.com> (https://plus-innovations.com)",