From c3a1ea1b3fbac815964a7042d60553ae1e8b1537 Mon Sep 17 00:00:00 2001 From: Philipp Hancke Date: Wed, 24 Nov 2021 08:27:05 +0100 Subject: [PATCH] dcsctp: assert that CreateTimeout returns a usable pointer BUG=None Change-Id: I97852d5222a4a722e61b450fbe446dd949b6840e Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/238802 Reviewed-by: Victor Boivie Commit-Queue: Victor Boivie Cr-Commit-Position: refs/heads/main@{#35412} --- net/dcsctp/timer/timer.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/net/dcsctp/timer/timer.cc b/net/dcsctp/timer/timer.cc index b3168e3b11..deee7db0c5 100644 --- a/net/dcsctp/timer/timer.cc +++ b/net/dcsctp/timer/timer.cc @@ -144,9 +144,11 @@ std::unique_ptr TimerManager::CreateTimer(absl::string_view name, // after 800 million reconnections on a single socket. Ensure this will never // happen. RTC_CHECK_NE(*id, std::numeric_limits::max()); + std::unique_ptr timeout = create_timeout_(); + RTC_CHECK(timeout != nullptr); auto timer = absl::WrapUnique(new Timer( id, name, std::move(on_expired), [this, id]() { timers_.erase(id); }, - create_timeout_(), options)); + std::move(timeout), options)); timers_[id] = timer.get(); return timer; }