From 5b1e6c7dbc14011759796380311b0b2fa4cae1d4 Mon Sep 17 00:00:00 2001 From: Harshavardhana Date: Mon, 22 Jun 2020 14:33:58 -0700 Subject: [PATCH] Add check for object statTime non-negative (#9899) --- cmd/xl-storage-format-v2.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/cmd/xl-storage-format-v2.go b/cmd/xl-storage-format-v2.go index 08c029ec0..8eac30b86 100644 --- a/cmd/xl-storage-format-v2.go +++ b/cmd/xl-storage-format-v2.go @@ -176,14 +176,17 @@ type xlMetaV2Version struct { func (j xlMetaV2Version) Valid() bool { switch j.Type { case LegacyType: - return j.ObjectV1 != nil && j.ObjectV1.valid() + return j.ObjectV1 != nil && + j.ObjectV1.valid() case ObjectType: return j.ObjectV2 != nil && j.ObjectV2.ErasureAlgorithm.valid() && j.ObjectV2.BitrotChecksumAlgo.valid() && - isXLMetaErasureInfoValid(j.ObjectV2.ErasureM, j.ObjectV2.ErasureN) + isXLMetaErasureInfoValid(j.ObjectV2.ErasureM, j.ObjectV2.ErasureN) && + j.ObjectV2.StatModTime > 0 case DeleteType: - return j.DeleteMarker != nil && j.DeleteMarker.ModTime > 0 + return j.DeleteMarker != nil && + j.DeleteMarker.ModTime > 0 } return false }