Chromium Code Reviews
Description[Merge to 2840] Revert of Fix WebRequest's EventListener::operator< (patchset #3 id:40001 of https://codereview.chromium.org/2121873002/ )
> Reason for revert:
> This may have caused a perf regression. Reverting to verify. If it did not, I'll reland next week.
>
> BUG=641958, 643025
>
> Original issue's description:
> > Fix WebRequest's EventListener::operator<
> >
> > std::set's count() method is expected to return 0 or 1. But due
> > to the fact that EventListener::operator< conditionally ignored
> > |embedder_process_id|, the count method could return more than 1
> > (e.g. 2) in release builds on Windows (VC++), and fail an assertion.
> >
> > This assertion failure shows that the assumption about the uniqueness
> > of EventListeners (while ignoring the |embedder_process_id| value) does
> > not hold, i.e. there may be more than one non-webview EventListeners
> > with the same |extension_id| and |sub_event_name|, but different
> > |embedder_process_id|.
> >
> > To fix this, this patch removes the conditional exclusion of
> > |embedder_process_id| from operator< and looks up |embedder_process_id|
> > before searching through the set.
> >
> > BUG=589735
> > TEST=./unit_tests --gtest_filter=ExtensionWebRequestTest.AddAndRemoveListeners
> >
> > Committed: https://crrev.com/c89943b168ef2ccc51f3ec0720e552f36ec31351
> > Cr-Commit-Position: refs/heads/master@{#404456}
>
> TBR=rockot@chromium.org,rob@robwu.nl
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=589735
>
> Review-Url: https://codereview.chromium.org/2299373002
> Cr-Commit-Position: refs/heads/master@{#416094}
> (cherry picked from commit e579d519620e6583ddc304f22c4c3c71dabbbe20)
Committed: https://chromium.googlesource.com/chromium/src/+/a67f30a6b303582d930417197f4a351901c6898a
Patch Set 1 #
Messages
Total messages: 2 (1 generated)
|
|||||||||||||||||||||||||||||||||||||