From 5879c10003763c57ba61cc8530571555cf024977 Mon Sep 17 00:00:00 2001 From: mtelvers Date: Thu, 2 Nov 2017 22:18:41 +0000 Subject: [PATCH] Fixes to Get-HVDatastore() when multiple datastores are specified `$Datastores` needs to be initialized as an empty array `@()` rather than `$null`. Furthermore, if `$DsStroageOvercommit` is empty it is only initialised with a single element where there should be one element per datastore. I've moved the test into the loop instead. --- Modules/VMware.Hv.Helper/VMware.HV.Helper.psm1 | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Modules/VMware.Hv.Helper/VMware.HV.Helper.psm1 b/Modules/VMware.Hv.Helper/VMware.HV.Helper.psm1 index 94f9939..127c056 100644 --- a/Modules/VMware.Hv.Helper/VMware.HV.Helper.psm1 +++ b/Modules/VMware.Hv.Helper/VMware.HV.Helper.psm1 @@ -5039,15 +5039,16 @@ function Get-HVDatastore { foreach ($ds in $datastoreNames) { $datastoresSelected += ($datastoreInfoList | Where-Object { ($_.DatastoreData.Path -eq $ds) -or ($_.datastoredata.name -eq $ds) }).id } - $Datastores = $null - if (! $DsStorageOvercommit) { - $DsStorageOvercommit += 'UNBOUNDED' - } + $Datastores = @() $StorageOvercommitCnt = 0 foreach ($ds in $datastoresSelected) { $myDatastores = New-Object VMware.Hv.DesktopVirtualCenterDatastoreSettings $myDatastores.Datastore = $ds - $mydatastores.StorageOvercommit = $DsStorageOvercommit[$StorageOvercommitCnt] + if (! $DsStorageOvercommit) { + $mydatastores.StorageOvercommit = 'UNBOUNDED' + } else { + $mydatastores.StorageOvercommit = $DsStorageOvercommit[$StorageOvercommitCnt] + } $Datastores += $myDatastores $StorageOvercommitCnt++ }