Merge pull request #48 from openebs/dev

Removing the last element which is nil from the reservation array
This commit is contained in:
Lei Xue
2017-02-21 17:56:48 +08:00
committed by GitHub

View File

@@ -215,6 +215,7 @@ func (op *SCSISimpleReservationOperator) DeleteAndRemoveReservation(tgtName stri
resArray[i] = resArray[len(resArray)-1] resArray[i] = resArray[len(resArray)-1]
resArray[len(resArray)-1] = nil resArray[len(resArray)-1] = nil
resArray = resArray[:len(resArray)-1] resArray = resArray[:len(resArray)-1]
LURes.Reservations = resArray
} }
if curRes == nil { if curRes == nil {
@@ -255,11 +256,19 @@ func (op *SCSISimpleReservationOperator) DeleteAndRemoveReservation(tgtName stri
func (op *SCSISimpleReservationOperator) RemoveReservation(tgtName string, devUUID uint64, res *api.SCSIReservation) { func (op *SCSISimpleReservationOperator) RemoveReservation(tgtName string, devUUID uint64, res *api.SCSIReservation) {
var ( var (
i int = -1 LURes *SCSILUReservation
tmpRes *api.SCSIReservation targetRes SCSILUReservationMap
tmpRes *api.SCSIReservation
i int = -1
ok bool
) )
if targetRes, ok = op.targetReservations[tgtName]; !ok {
resArray := op.GetReservationList(tgtName, devUUID) return
}
if LURes, ok = targetRes[devUUID]; !ok {
return
}
resArray := LURes.Reservations
for i, tmpRes = range resArray { for i, tmpRes = range resArray {
if tmpRes == res { if tmpRes == res {
@@ -271,6 +280,7 @@ func (op *SCSISimpleReservationOperator) RemoveReservation(tgtName string, devUU
resArray[i] = resArray[len(resArray)-1] resArray[i] = resArray[len(resArray)-1]
resArray[len(resArray)-1] = nil resArray[len(resArray)-1] = nil
resArray = resArray[:len(resArray)-1] resArray = resArray[:len(resArray)-1]
LURes.Reservations = resArray
} }
} }