[BackoffEntrySerializer] Fail deserialization when release time is inf.

Bug: 1293904
Change-Id: I906ad7c9629e8fcf3bbac766c74adbec367466cd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3437330
Reviewed-by: Maks Orlovich <[email protected]>
Commit-Queue: Dan McArdle <[email protected]>
Cr-Commit-Position: refs/heads/main@{#968319}
diff --git a/net/base/backoff_entry_serializer.cc b/net/base/backoff_entry_serializer.cc
index fd4fc472..d0f41cd 100644
--- a/net/base/backoff_entry_serializer.cc
+++ b/net/base/backoff_entry_serializer.cc
@@ -166,8 +166,12 @@
   }
   if (!BackoffDurationSafeToSerialize(backoff_duration))
     return nullptr;
-  entry->SetCustomReleaseTime(
-      entry->BackoffDurationToReleaseTime(backoff_duration));
+
+  const base::TimeTicks release_time =
+      entry->BackoffDurationToReleaseTime(backoff_duration);
+  if (release_time.is_inf())
+    return nullptr;
+  entry->SetCustomReleaseTime(release_time);
 
   return entry;
 }