Merge pull request #75 from infinite-iroha/break/v1-fix-mergectx
Some checks are pending
Go Test / test (push) Waiting to run

fix: mergedContext.Value 遍历父 contexts 查找值
This commit is contained in:
WJQSERVER 2026-03-30 16:45:09 +08:00 committed by GitHub
commit ef965f4a6a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -75,7 +75,12 @@ func MergeCtx(parents ...context.Context) (ctx context.Context, cancel context.C
// Value 返回当前Ctx Value
func (mc *mergedContext) Value(key any) any {
return mc.Context.Value(key)
for _, p := range mc.parents {
if val := p.Value(key); val != nil {
return val
}
}
return nil
}
// Deadline 实现了 context.Context 的 Deadline 方法.