blob: c85b074dc349338f452a749d351a6f1ee77084d1 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
--- contrib/libs/grpc/src/core/ext/filters/client_channel/retry_filter.cc (index)
+++ contrib/libs/grpc/src/core/ext/filters/client_channel/retry_filter.cc (working tree)
@@ -2603,8 +2603,10 @@ void RetryFilter::CallData::OnRetryTimer() {
void RetryFilter::CallData::OnRetryTimerLocked(void* arg,
grpc_error_handle /*error*/) {
auto* calld = static_cast<CallData*>(arg);
- calld->retry_timer_handle_.reset();
- calld->CreateCallAttempt(/*is_transparent_retry=*/false);
+ if (calld->retry_timer_handle_.has_value()) {
+ calld->retry_timer_handle_.reset();
+ calld->CreateCallAttempt(/*is_transparent_retry=*/false);
+ }
GRPC_CALL_STACK_UNREF(calld->owning_call_, "OnRetryTimer");
}
|