Skip to content

Commit 9c6dd2b

Browse files
committed
fix(chunk): 更新Get方法中的注释以增强代码可读性
1 parent d8fb575 commit 9c6dd2b

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

drivers/chunk/driver.go

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ func (d *Chunk) Get(ctx context.Context, path string) (model.Obj, error) {
7777
return nil, err
7878
}
7979
var totalSize int64 = 0
80+
// 0号块必须存在
8081
chunkSizes := []int64{-1}
8182
h := make(map[*utils.HashType]string)
8283
var first model.Obj
@@ -113,8 +114,15 @@ func (d *Chunk) Get(ctx context.Context, path string) (model.Obj, error) {
113114
chunkSizes[idx] = o.GetSize()
114115
}
115116
}
117+
// 检查0号块不等于-1 以支持空文件
118+
// 如果块数量大于1 最后一块不可能为0
119+
// 只检查中间块是否有0
116120
for i, l := 0, len(chunkSizes)-2; ; i++ {
117-
if (i == 0 && chunkSizes[i] == -1) || chunkSizes[i] == 0 {
121+
if i == 0 {
122+
if chunkSizes[i] == -1 {
123+
return nil, fmt.Errorf("chunk part[%d] are missing", i)
124+
}
125+
} else if chunkSizes[i] == 0 {
118126
return nil, fmt.Errorf("chunk part[%d] are missing", i)
119127
}
120128
if i >= l {

0 commit comments

Comments
 (0)