2303
func (s *ContextImpl) newDetachedContext(
2304
ctx context.Context,
2306
>
if err := ctx.Err(); err != nil {
2307
return nil, nil, err
2308
}
2309
2310
>
detachedContext := rpc.CopyContextValues(s.lifecycleCtx, ctx)
context_impl.go
2311
>
2312
>
var cancel context.CancelFunc
2313
>
deadline, ok := ctx.Deadline()
2314
>
if ok {
2315
timeout := max(deadline.Sub(s.GetTimeSource().Now()), minContextTimeout)
2316
detachedContext, cancel = context.WithTimeout(detachedContext, timeout)
2318
cancel = func() {}
2319
}
2320
2322
}
2323