Commit 2a9e401b authored by Cammie Smith Barnes's avatar Cammie Smith Barnes Committed by Commit Bot

PM: Add HasObserver method to V8PerFrameMemoryRequestAnySeq.

For an Ad metrics project, we would like to gate adding an observer to
a subclass of V8PerFrameMemoryRequestAnySeq on there being an ad frame
detected on the page. Hence, we need to be able to check whether we
added this observer so that we can safely remove it in the destructor.
This CL adds a public bool method for checking whether the observer is
there before we try to remove it.

Change-Id: I2a212eb91edbb81e952d629b364652937e93c995
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2327814Reviewed-by: default avatarJoe Mason <joenotcharles@chromium.org>
Reviewed-by: default avatarChris Hamilton <chrisha@chromium.org>
Commit-Queue: Chris Hamilton <chrisha@chromium.org>
Cr-Commit-Position: refs/heads/master@{#795220}
parent 6630278d
......@@ -458,6 +458,9 @@ class V8PerFrameMemoryRequestAnySeq {
V8PerFrameMemoryRequestAnySeq& operator=(
const V8PerFrameMemoryRequestAnySeq&) = delete;
// Returns whether |observer| is in |observers_|.
bool HasObserver(V8PerFrameMemoryObserverAnySeq* observer);
// Adds an observer that was created on the same sequence as the
// V8PerFrameMemoryRequestAnySeq.
void AddObserver(V8PerFrameMemoryObserverAnySeq* observer);
......
......@@ -662,6 +662,12 @@ V8PerFrameMemoryRequestAnySeq::~V8PerFrameMemoryRequestAnySeq() {
std::move(request_)));
}
bool V8PerFrameMemoryRequestAnySeq::HasObserver(
V8PerFrameMemoryObserverAnySeq* observer) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
return observers_.HasObserver(observer);
}
void V8PerFrameMemoryRequestAnySeq::AddObserver(
V8PerFrameMemoryObserverAnySeq* observer) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment