Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(58)

Unified Diff: testing/embedder_test_timer_handling_delegate.h

Issue 2626863003: Don't put timers with ID == 0 into the global timer map. (Closed)
Patch Set: add test Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « fpdfsdk/javascript/app.cpp ('k') | testing/resources/bug_679649.in » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: testing/embedder_test_timer_handling_delegate.h
diff --git a/testing/embedder_test_timer_handling_delegate.h b/testing/embedder_test_timer_handling_delegate.h
index 709dd22c1723f0cf299c98723aa84c647ab45339..31966159eb95e9afc292bbae711b9e2f9e0752d7 100644
--- a/testing/embedder_test_timer_handling_delegate.h
+++ b/testing/embedder_test_timer_handling_delegate.h
@@ -38,9 +38,11 @@ class EmbedderTestTimerHandlingDelegate : public EmbedderTest::Delegate {
}
int SetTimer(int msecs, TimerCallback fn) override {
- expiry_to_timer_map_.insert(std::pair<int, Timer>(
- msecs + fake_elapsed_msecs_, {++next_timer_id_, msecs, fn}));
- return next_timer_id_;
+ int id = fail_next_timer_ ? 0 : ++next_timer_id_;
+ expiry_to_timer_map_.insert(
+ std::pair<int, Timer>(msecs + fake_elapsed_msecs_, {id, msecs, fn}));
+ fail_next_timer_ = false;
+ return id;
}
void KillTimer(int id) override {
@@ -73,8 +75,11 @@ class EmbedderTestTimerHandlingDelegate : public EmbedderTest::Delegate {
const std::vector<AlertRecord>& GetAlerts() const { return alerts_; }
+ void SetFailNextTimer() { fail_next_timer_ = true; }
+
protected:
std::multimap<int, Timer> expiry_to_timer_map_; // Keyed by timeout.
+ bool fail_next_timer_ = false;
int next_timer_id_ = 0;
int fake_elapsed_msecs_ = 0;
std::vector<AlertRecord> alerts_;
« no previous file with comments | « fpdfsdk/javascript/app.cpp ('k') | testing/resources/bug_679649.in » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698