From dee5039ab14ad1e254e15f9e0f353735ab1df72f Mon Sep 17 00:00:00 2001 From: CharlesNRU Date: Mon, 2 Nov 2020 20:44:13 -0500 Subject: [PATCH 1/2] Fix GetSettings - Ignore nameless values & trim values. --- HP/Manage-HPBiosSettings.ps1 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/HP/Manage-HPBiosSettings.ps1 b/HP/Manage-HPBiosSettings.ps1 index 9c9de1e..b353ec0 100644 --- a/HP/Manage-HPBiosSettings.ps1 +++ b/HP/Manage-HPBiosSettings.ps1 @@ -420,7 +420,7 @@ if($SetSettings) #Get the current settings if($GetSettings) { - $SettingList = $SettingList | Select-Object Name,Value | Sort-Object Name + $SettingList = $SettingList | Where-Object{$_.Name -ne " "} | Select-Object Name,Value | Sort-Object Name $SettingObject = ForEach($Setting in $SettingList){ #Split the current values $SettingSplit = ($Setting.Value).Split(',') @@ -428,9 +428,9 @@ if($GetSettings) $SplitCount = 0 while($SplitCount -lt $SettingSplit.Count) { - if($SettingSplit[$SplitCount].StartsWith('*')) + if($SettingSplit[$SplitCount].Trim().StartsWith('*')) { - $SetValue = ($SettingSplit[$SplitCount]).Substring(1) + $SetValue = ($SettingSplit[$SplitCount]).Trim().Substring(1) break } else From 3331a04168f28994adb4eb9e13282092529e9b2b Mon Sep 17 00:00:00 2001 From: CharlesNRU Date: Wed, 4 Nov 2020 19:34:48 -0500 Subject: [PATCH 2/2] Trimming values when getting current values --- HP/Manage-HPBiosSettings.ps1 | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/HP/Manage-HPBiosSettings.ps1 b/HP/Manage-HPBiosSettings.ps1 index b353ec0..4b8cec1 100644 --- a/HP/Manage-HPBiosSettings.ps1 +++ b/HP/Manage-HPBiosSettings.ps1 @@ -220,7 +220,7 @@ Function Set-HPBiosSetting if($NULL -ne $CurrentSetting) { #Split the current values - $CurrentSettingSplit = $CurrentSetting.Split(',') + $CurrentSettingSplit = $CurrentSetting.Split(',') | ForEach-Object{$_.Trim()} #Find the currently set value $Count = 0 while($Count -lt $CurrentSettingSplit.Count) @@ -423,14 +423,14 @@ if($GetSettings) $SettingList = $SettingList | Where-Object{$_.Name -ne " "} | Select-Object Name,Value | Sort-Object Name $SettingObject = ForEach($Setting in $SettingList){ #Split the current values - $SettingSplit = ($Setting.Value).Split(',') + $SettingSplit = ($Setting.Value).Split(',') | ForEach-Object{$_.Trim()} #Find the currently set value $SplitCount = 0 while($SplitCount -lt $SettingSplit.Count) { - if($SettingSplit[$SplitCount].Trim().StartsWith('*')) + if($SettingSplit[$SplitCount].StartsWith('*')) { - $SetValue = ($SettingSplit[$SplitCount]).Trim().Substring(1) + $SetValue = ($SettingSplit[$SplitCount]).Substring(1) break } else